我有一个 CSV 文件,其中分隔符是“
但是,文件中还有几个文本变量,在文本“example”周围有“”。
因此,read.csv 没有给出正确的输出,它表示列数多于列名。我怎样才能确保文本周围的“”不被读取为 R 中的分隔符?
这是 csv 的示例:
year"prak"pat"pres"ats"ispc"omschr 2011"724"22989865"11jun2019""V9JAA""111230""我的电影" 2011"689"1231223"21jun2019""KA0097""288900""XACINE" 2011"661"87987987"22mar2019""J09L91""2232600""XACINE" 2011"724"22989865"11jun2019""V9JAA""111230""MYCINE"
谢谢!
我尝试使用 quote = '"' 来确保文本周围的 " 不会被读取为分隔符。这没有用。
我也试过 header = False。这使得数据非常混乱,很多空的新列。
读取分隔符设置为
"
,然后删除所有行都是NA的列:
# example input
x <- read.table(text = '
2011"724"22989865"11jun2019""V9JAA""111230""MYCINE"
2012"724"22989865"11jun2019""V9JAA""111230""MYCINE"
2014"724"22989865"11jun2019""V9JAA""111230""MYCINE"
', sep = '"')
x
# V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11
# 1 2011 724 22989865 11jun2019 NA V9JAA NA 111230 NA MYCINE NA
# 2 2012 724 22989865 11jun2019 NA V9JAA NA 111230 NA MYCINE NA
# 3 2014 724 22989865 11jun2019 NA V9JAA NA 111230 NA MYCINE NA
# remove NA columns
x[, !(colSums(is.na(x)) == nrow(x))]
# V1 V2 V3 V4 V6 V8 V10
# 1 2011 724 22989865 11jun2019 V9JAA 111230 MYCINE
# 2 2012 724 22989865 11jun2019 V9JAA 111230 MYCINE
# 3 2014 724 22989865 11jun2019 V9JAA 111230 MYCINE