如何在 r 中修复:列多于列名
在 R 中您可能遇到的错误是:
Error in read.table("my_data.csv", header=TRUE): more columns than column names
当您尝试使用read.table()函数在 R 中读取 CSV 文件并且未能指定分隔符 ( sep ) 应为逗号时,通常会发生此错误。
本教程准确解释了如何修复此错误。
如何重现错误
假设我们有以下名为篮球数据.csv的 CSV 文件:
现在假设我们尝试使用read.table()函数将此文件导入到 R 中:
#attempt to import CSV into data frame
df <- read. table ("basketball_data.csv", header= TRUE )
Error in read.table("basketball_data.csv", header = TRUE):
more columns than column names
我们收到错误,因为我们未能指定文件中的值以逗号分隔。
由于数据帧的行中的值之间有空格,但标题中没有,因此read.table()函数认为只有一列。
因此,这告诉我们列的数量多于列名称。
如何修复错误
修复此错误的方法是在导入文件时简单地使用sep=”” :
#import CSV file into data frame
df <- read. table ("basketball_data.csv", header= TRUE , sep=",")
#view data frame
df
team points rebounds
1 to 22 10
2 B 14 9
3 C 29 6
4 D 30 2
我们能够成功导入 CSV 文件,没有任何错误,因为我们已指定文件中的值以逗号分隔。
或者,如果我们知道它是 CSV 文件,我们可以使用read.csv()来导入该文件:
#import CSV file into data frame
df <- read. csv ("basketball_data.csv", header= TRUE )
#view data frame
df
team points rebounds
1 'A' 22 10
2 'B' 14 9
3 'C' 29 6
4 'D' 30 2
请注意,这次我们在导入 CSV 文件时也没有收到任何错误。
其他资源
以下教程解释了如何解决 R 中的其他常见错误:
如何在 R 中修复:名称与以前的名称不匹配
如何在 R 中修复:较长物体的长度不是较短物体长度的倍数
如何在 R 中修复:对比只能应用于具有 2 个或更多级别的因子