R чтение файла tsv с использованием определенной кодировки

Я пытаюсь прочитать файл .tsv (значение, разделенное табуляцией) в R, используя определенную кодировку. Предположительно windows-1252. И у него есть заголовок.

Любые предложения по коду, чтобы поместить его в фрейм данных?


r tsv
person screechOwl    schedule 19.03.2012    source источник


Ответы (3)


Что-то вроде этого, наверное?

mydf <- read.table('thefile.txt', header=TRUE, sep="\t", fileEncoding="windows-1252")
str(mydf)
person Tommy    schedule 19.03.2012

Вы также можете использовать:

read.delim('thefile.txt', header= T, fileEncoding= "windows-1252")

Просто введите команду в консоль R:

 > read.delim
function (file, header = TRUE, sep = "\t", quote = "\"", dec = ".", 
    fill = TRUE, comment.char = "", ...) 
read.table(file = file, header = header, sep = sep, quote = quote, 
    dec = dec, fill = fill, comment.char = comment.char, ...)

показывает, что read.delim — это упакованная команда read.table, которая уже указывает вкладки в качестве разделителя ваших данных. read.delim может быть более удобным, если вы работаете с большим количеством TSV-файлов.

Разница между двумя командами обсуждается более подробно в этот вопрос о стеке.

person Frederica Stahl    schedule 29.05.2013

df <- read.delim(~/file_directory/file_name.tsv, header = TRUE) будет нормально работать для одного файла .tsv, потому что он уже разделен табуляцией, поэтому sep = "\t" не нужен. fileEncoding= "windows-1252" можно использовать, но не обязательно.

person Community    schedule 16.01.2016