如何在read.csv中声明1000分隔符?
我要读入的数据集包含带逗号和不带逗号分隔符的数字:如何在read.csv中声明1000分隔符?,r,csv,R,Csv,我要读入的数据集包含带逗号和不带逗号分隔符的数字: "Sudan", "15,276,000", "14,098,000", "13,509,000" "Chad", 209000, 196000, 190000 我正在寻找一种方法来读取这些数据 任何暗示都感谢 查看这组数据,您可以使用“,”(注意额外的空格)作为“,”的分隔符intead对其进行解析。将其作为两个步骤进行分析。 1.将“,”替换为制表符 2.在选项卡上拆分 我在这里假设.NET,但示例原则适用于任何语言您可以使用以下正则表达
"Sudan", "15,276,000", "14,098,000", "13,509,000"
"Chad", 209000, 196000, 190000
我正在寻找一种方法来读取这些数据
任何暗示都感谢 查看这组数据,您可以使用“,”(注意额外的空格)作为“,”的分隔符intead对其进行解析。将其作为两个步骤进行分析。 1.将“,”替换为制表符 2.在选项卡上拆分
我在这里假设.NET,但示例原则适用于任何语言您可以使用以下正则表达式删除逗号和任何周围的引号,以保留纯csv内容
,(?=[0-9])|"
然后按正常方式处理它,因为问题下面有一个“r”标记,我假设这是一个r问题。
在R中,不需要做任何事情来处理引号中的逗号:
> read.csv('t.csv', header=F)
V1 V2 V3 V4
1 Sudan 15,276,000 14,098,000 13,509,000
2 Chad 209000 196000 190000
# if you want to convert them to numbers:
> df <- read.csv('t.csv', header=F, stringsAsFactor=F)
> df$V2 <- as.numeric(gsub(',', '', df$V2))
>read.csv('t.csv',header=F)
V1 V2 V3 V4
1苏丹15276000 14098000 13509000
2乍得209000 196000 190000
#如果要将它们转换为数字:
>df$V2一些注释-1)“r”标记表示Karsten使用的是“r”语言,而不是.NET。2) 用制表符替换所有逗号是行不通的,你最终会以错误的方式分割数据。如果read.csv(根目录下的read.table)将“数千.sep”参数作为字符以允许(和strip)数字数据,我会很高兴。目前,我认为gsub()解决方案是我们仅有的。