Как исправить в r: столбцов больше, чем имен столбцов


Ошибка, с которой вы можете столкнуться в R:

 Error in read.table("my_data.csv", header=TRUE): 
  more columns than column names 

Эта ошибка обычно возникает, когда вы пытаетесь прочитать CSV-файл в R с помощью функции read.table() и не указываете, что разделителем ( sep ) должна быть запятая.

В этом руководстве объясняется, как именно исправить эту ошибку.

Как воспроизвести ошибку

Допустим, у нас есть следующий CSV-файл с именем Basketball_data.csv :

Теперь предположим, что мы пытаемся импортировать этот файл в R с помощью функции read.table() :

 #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 без каких-либо ошибок, поскольку мы указали, что значения в файле разделены запятыми.

В качестве альтернативы мы могли бы просто использовать read.csv() для импорта файла, если мы знаем, что это файл 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 и более уровнями

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *