gpt4 book ai didi

r 替换字符串中的字符时出错

转载 作者:行者123 更新时间:2023-12-04 09:33:17 24 4
gpt4 key购买 nike

我正在读取一个结构如下的文件:

[1111111]aaaa;bbbb;cccc
[2222222]dddd;ffff;gggg

我想要一个像这样的数据框:

Column A  Column B  Column C  Column D
1111111 aaaa bbbb cccc
2222222 dddd ffff gggg

所以我需要分开;并替换所有 [ ]

这是我的代码:

读取文件

df<-read.csv("file.csv",sep=";")

替换 [ ]

df_V1 <- gsub(pattern="[",replacement="",df$V1)  #ERROR HERE!
df_V1 <- gsub(pattern="]",replacement=";",df$V1) #Replace the ] to ;

然后合并在一起

df_V1 <- do.call(rbind.data.frame,strsplit(df_V1,split=";"))
Data<- cbind(
df_V1,
df[,c(2:ncol(df))])

这是我的输出

View(Data)

Column A Column B Column C Column D
[1111111 aaaa bbbb cccc
[2222222 dddd ffff gggg

并且不知道为什么第一个 [ 不能被替换,我已经尝试使用 gsub 并删除字符串的第一个字符,但似乎没有什么可以解决它。有什么想法吗?

谢谢你的时间

最佳答案

我们可以先使用 readLines 读取数据,使用 gsub 进行字符串更改,然后使用 read.csv 读取数据

read.csv(text=sub(";", "", gsub("[][]", ";", lines)), 
sep=";", header=FALSE, col.names = paste0("Column", LETTERS[1:4]), stringsAsFactors=FALSE)
# ColumnA ColumnB ColumnC ColumnD
#1 1111111 aaaa bbbb cccc
#2 2222222 dddd ffff gggg

数据

lines <- readLines("file1.txt")

关于r 替换字符串中的字符时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43819617/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com