Как экспортировать фрейм данных в файл CSV в R (с примерами)


Предположим, у нас есть следующий фрейм данных в R:

#create data frame
df <- data.frame(team=c('A', 'B', 'C', 'D', 'E'),
 points=c(78, 85, 93, 90, 91),
 assists=c(12, 20, 23, 8, 14))

#view data frame
df

 team points assists
1 A 78 12
2 B 85 20
3 C 93 23
4 D 90 8
5 E 91 14

Существует три распространенных способа экспорта этого фрейма данных в файл CSV в R:

1. Используйте write.csv из базы R

Если ваш фрейм данных достаточно мал, вы можете просто использовать функцию write.csv из базы R, чтобы экспортировать его в файл CSV.

При использовании этого метода обязательно укажите row.names=FALSE , если вы не хотите, чтобы R экспортировал имена строк в CSV-файл.

write.csv(df, " C:\\Users\\Bob\\Desktop\\data.csv", row.names= FALSE )

2. Используйте write_csv из пакета для чтения

Еще более быстрый способ экспортировать фрейм данных в CSV-файл — использовать функцию write_csv из пакета для чтения. Это примерно в 2 раза быстрее, чем write.csv, и никогда не записывает имена строк из фрейма данных в файл CSV.

library (readr)

write_csv(df, " C:\\Users\\Bob\\Desktop\\data.csv ")

3. Используйте fwrite из пакета data.table

Тем не менее, более быстрый способ (и рекомендуемый метод для больших наборов данных) экспортировать фрейм данных в файл CSV — использовать функцию fwrite из пакета data.table. Эта функция примерно в 2 раза быстрее, чем метод write_csv.

library (data.table)

fwrite(df, " C:\\Users\\Bob\\Desktop\\data.csv ")

Обратите внимание, что в каждом примере мы использовали двойную обратную косую черту (\) в пути к файлу, чтобы избежать следующей распространенной ошибки:

Error: '\U' used without hex digits in character string starting ""C:\U"

Выход

Каждый из трех описанных выше методов создает идентичный CSV-файл. Если мы откроем этот файл в Excel, вот как он будет выглядеть:

И если мы откроем файл CSV с помощью текстового ридера, такого как Блокнот, вот как он будет выглядеть:

Связанный: Как импортировать файлы CSV в R