У меня есть список файлов (не сделанных мной), которые по какой-либо причине помечены как «.csv», хотя некоторые из них являются csv, а некоторые - разделителями на вкладке. Поэтому, когда я пытаюсь прочитать их в R, мне нужно будет указать разделитель вручную. Если кто-то не знает, есть ли способ проверить это, прежде чем я получаю искаженный файл для чтения в.Проверьте, как файл делится перед чтением в R
4
A
ответ
9
Если бы поместить это в ответе ...
fread
функции в пакете data.table делает попытку угадать правильный разделитель. Это, вероятно, не идеально, но, скорее всего, справится с большинством простых случаев.
6
Поскольку вкладки не особенно вероятно, будет в данных, если там в качестве разделителя не может сделать это, как правило, правильный тест:
dat <- if("\t" %in% strsplit(readLines("path/fil.csv", n=1)[1], split="")[[1]]) {
read.table("path/fil.csv", sep="\t") }else{
read.table("path/fil.csv", sep=",") }
(Ханделс только случай, либо «\ т» или «» как описано.) Тестирование:
> dat <- if("\t" %in% strsplit(readLines(textConnection("a\tb\tc\nd\te\tf"), n=1)[1], split="")[[1]]) {
+ read.table(textConnection("a\tb\tc\nd\te\tf"), sep="\t") }else{
+ read.table(textConnection("a,b,c\nd,e,f"), sep=",") }
> dat
V1 V2 V3
1 a b c
2 d e f
Смежные вопросы
- 1. Проверьте, открыт ли файл перед его чтением?
- 2. сила зимуют перезагрузить файл HSQLDB перед чтением
- 3. Lazyily фильтрация файла перед чтением
- 4. Decompress tar перед чтением
- 5. Facebook - проверьте, кто делится ссылкой
- 6. Проверьте файл перед загрузкой программы
- 7. Заблокировать перед чтением глобальной строки?
- 8. Как обновить страницу jsp перед чтением содержимого?
- 9. Что означает «чтение перед чтением» в памяти?
- 10. Нужно ли закрывать файл после записи и перед чтением?
- 11. PHP Проверьте, что файл открыт перед переименованием
- 12. Проверьте, существует ли файл перед вызовом openFileInput
- 13. Сжатие большого файла журнала перед чтением
- 14. Пылеуловитель, проверьте, делится ли итерация на число
- 15. Проверьте файл войны перед развертыванием/условным развертыванием
- 16. R - Как подсчитать количество столбцов в каждой строке файла перед чтением файла
- 17. Проверьте, используется ли файл перед экспортом
- 18. Проблемы с чтением файла JSON в R
- 19. C++ getline() перезагрузка перед чтением всего файла
- 20. Проверьте поврежденный файл перед копированием в другой файл
- 21. Проверьте, загружен ли файл перед отправкой формы
- 22. Поведение записи в TCP-сокет перед чтением всех данных
- 23. Значение делится на половину перед отправкой
- 24. Проблема с чтением CSV-файла в R
- 25. Проверьте перед сеансом перед возвратом?
- 26. hadoop большой файл не делится
- 27. Поиск информации о sockaddr перед чтением udp
- 28. Ждите ключа перед чтением с JTextField
- 29. Paramiko завершает процесс перед чтением всего вывода
- 30. Программа заканчивается перед чтением всех элементов структуры
'fread' в пакете data.table делает попытку угадать правильный разделитель. – joran
удивительный. Гораздо лучше, чем if (grepl ("\ t", check.file [1,]) [1]) check.file <- read.table (проверяет [i], header = T, sep = "\ t") Я читал его в CSV. Спасибо, Джоран! – cianius