我一直试图把一个csv文件加载到R中进行处理,但是在尝试读取数据时遇到了奇怪的问题。
这个csv文件没有任何标题,我使用以下简单的代码读取数据:
newClick <- read.csv("test.csv", header = F)
以下是样本数据集:
10000011791441224671,V_Display,exit
10000011951441812316,V_Display,exit
10000013211441319797,V_Display,exit
1000001331441725509,V_Display,exit
10000013681418242863,C_GoogleNonBrand,V_Display,V_Display,V_Display,V_Display,_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,exit
10000014031441295393,V_Display,exit
这份数据的输出结果应该是一个包含18列,6行的预期数据框。
然而,这里有一个棘手的部分。如果我在数据集中添加另一行,例如:
10000011791441224671,V_Display,exit
10000011951441812316,V_Display,exit
1000000191441228436,V_Display,exit
10000013211441319797,V_Display,exit
1000001331441725509,V_Display,exit
10000013681418242863,C_GoogleNonBrand,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,V_Display,exit
10000014031441295393,V_Display,exit
这个的输出结果是12行3列的怪异数据。经过仔细分析,我发现整个倒数第二行被分成了6行,每行有三列,这很奇怪。您对此有何想法吗?
?read.table
的说明,数据列的数量是通过查看前五行输入内容(如果少于五行则查看全部内容),或者如果指定了col.names
参数且其长度更长,则根据其长度来确定的。 - nicola