我的问题是,当我读取一个包含列名的csv文件时,例如(标题),列名会消失,并有“v1”,“v2”。。。相反
我有 mtcars
csv格式的数据集,这里是预览
model,mpg,cyl,disp,hp,drat,wt,qsec,vs,am,gear,carb
Mazda RX4,21,6,160,110,3.9,2.62,16.46,0,1,4,4
Mazda RX4 Wag,21,6,160,110,3.9,2.875,17.02,0,1,4,4
Datsun 710,22.8,4,108,93,3.85,2.32,18.61,1,1,4,1
我想上传到hdfs并阅读它,所以我在“hue”平台上传文件。我可以在文件管理器中查看它。下面是一个小预览:
然后在r会话中使用 plyrmr
我运行以下代码:
filename3 <- "/user/sgerony/mtcars.csv"
input(filename3,format=make.input.format(format = "csv", sep=","))
结果是:
V1 V2 V3 V4 V5 V6 V7 V8 V9 V10 V11 V12
1 Chrysler Imperial 14.7 8 440 230 3.23 5.345 17.42 0 0 3 4
2 Fiat 128 32.4 4 78.7 66 4.08 2.2 19.47 1 1 4 1
3 Honda Civic 30.4 4 75.7 52 4.93 1.615 18.52 1 1 4 2
4 Toyota Corolla 33.9 4 71.1 65 4.22 1.835 19.9 1 1 4 1
正如你所看到的,列名已经消失了。我做错什么了?
谢谢
1条答案
按热度按时间tnkciper1#
这是我找到的解决方案(我真的不喜欢它,所以如果你有一个更好的请做分享)。
我将csv文件分为两个csv文件,一个只包含列名(mtcars\u names.csv),另一个包含数据(mtcars\u no\u names.csv)。然后上传到文件管理器。
现在,每次我写/读文件时,我都会编写代码:
如果我生成数据子集,这会变得非常混乱。对于具有不同列名的每个子集,必须生成一个包含列名的新文件