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

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

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

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

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

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

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

Предположим, у нас есть следующий CSV-файл с именем баскетбол_данные.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 A 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 или более уровнями

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.