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

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *