Як виправити в 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 або більше рівнями