如何在 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 个或更多级别的因子

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注