#r #csv
#r #csv
Вопрос:
У меня возникли проблемы с чтением в файле csv. Когда я открываю csv-файл в блокноте, он выглядит так:
`USER` `USER_TYPE` `V1` `V2` `V3` `V4` `V5` `V6` `V7` `V8` `V9` `V10`
508 `Gemandateerde zonder werk` 8 4 1 2 `` `` `` `` 1 1
510 `Gemandateerde zonder werk` 8 4 2 `` `` `` `` `` 1 1
511 `Gemandateerde met werk` 8 3 1 2 `` `` `` `` 1 1
512 `Kind` 8 4 1 2 2 2 2 1 1 1
513 `Kind` 5 4 1 1 2 3 6 2 1 1
514 `Kind` 2 3 1 2 `` `` `` `` 1 2
515 `Gemandateerde zonder werk` 8 4 1 1 2 6 2 1 1 1
516 `Gemandateerde met werk` 8 2 1 1 2 4 1 2 1 2
517 `Kind` 8 2 1 2 `` `` `` `` 1 1
519 `Kind` 8 4 1 1 2 2 6 2 1 1
520 `Kind` 8 3 1 1 2 4 2 1 1 1
Я использовал следующий вызов (и пробовал разные вещи):
df <- read.csv("file.csv", header = TRUE, sep = "")
R возвращает:
Error in read.table(file = file, header = header, sep = sep, quote = quote, :
more columns than column names
Я не понимаю, что я делаю неправильно, в первой строке столько имен переменных, сколько точек данных во второй строке для первого случая, может кто-нибудь мне помочь?
Ответ №1:
Кажется, у вас есть обратные кавычки, цитирующие ваши данные. Попробуйте:
> read.csv("~/Downloads/file.csv",sep="",head=TRUE,quote="`")
USER USER_TYPE V1 V2 V3 V4 V5 V6 V7 V8 V9 V10
1 508 Gemandateerde zonder werk 8 4 1 2 NA NA NA NA 1 1
2 510 Gemandateerde zonder werk 8 4 2 NA NA NA NA NA 1 1
3 511 Gemandateerde met werk 8 3 1 2 NA NA NA NA 1 1
4 512 Kind 8 4 1 2 2 2 2 1 1 1
5 513 Kind 5 4 1 1 2 3 6 2 1 1
6 514 Kind 2 3 1 2 NA NA NA NA 1 2
CSV обычно содержат одинарные или двойные кавычки. Не сообщая R, что ` является вашим символом кавычки, он видит `Gemandateerde zonder werk` в виде трех полей, разделенных пробелами, и это объясняет сообщение об ошибке.