Как импортировать файлы CSV в R (шаг за шагом)


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

C:\Пользователи\Боб\Рабочий стол\data.csv

И предположим, что файл CSV содержит следующие данные:

team, points, assists
'A', 78, 12
'B', 85, 20
'C', 93, 23
'D', 90, 8
'E', 91, 14

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

1. Используйте read.csv из базы R (самый медленный метод, но отлично работает для небольших наборов данных)

data1 <- read.csv(" C:\\Users\\Bob\\Desktop\\data.csv", header= TRUE , stringsAsFactors= FALSE )

2. Используйте read_csv из пакета readr (в 2-3 раза быстрее, чем read.csv)

library (readr)

data2 <- read_csv(" C:\\Users\\Bob\\Desktop\\data.csv ")

3. Используйте fread из пакета data.table (в 2-3 раза быстрее, чем read_csv)

library (data.table)

data3 <- fread(" C:\\Users\\Bob\\Desktop\\data.csv ")

В этом руководстве показан пример использования каждого из этих методов для импорта CSV-файла в R.

Способ 1: использование read.csv

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

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

В следующем коде показано, как использовать read.csv для импорта этого CSV-файла в R:

#import data
data1 <- read.csv(" C:\\Users\\Bob\\Desktop\\data.csv", header= TRUE , stringsAsFactors= FALSE )

#view structure of data
str(data1)

'data.frame': 5 obs. of 3 variables:
 $ team : chr "'A'" "'B'" "'C'" "'D'" ...
 $ points : int 78 85 93 90 91
 $ assists: int 12 20 23 8 14

Способ 2: использование read_csv

Если вы работаете с большими файлами, вы можете использовать функцию read_csv из пакета readr:

library (readr)

#import data
data2 <- read_csv(" C:\\Users\\Bob\\Desktop\\data.csv ")

#view structure of data
str(data2)

'data.frame': 5 obs. of 3 variables:
 $ team : chr "'A'" "'B'" "'C'" "'D'" ...
 $ points : int 78 85 93 90 91
 $ assists: int 12 20 23 8 14

Способ 3: Использование фрида

Если ваш CSV очень большой, самый быстрый способ импортировать его в R — использовать функцию fread из пакета data.table:

library (data.table)

#import data
data3 <- fread(" C:\\Users\\Bob\\Desktop\\data.csv ")

#view structure of data
str(data3)

Classes 'data.table' and 'data.frame': 5 obs. of 3 variables:
 $ team : chr "'A'" "'B'" "'C'" "'D'" ...
 $ points : int 78 85 93 90 91
 $ assists: int 12 20 23 8 14

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

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

Дополнительные ресурсы

В следующих руководствах объясняется, как импортировать другие типы файлов в R:

Как импортировать файлы Excel в R
Как импортировать файлы TSV в R
Как импортировать Zip-файлы в R
Как импортировать файлы SAS в R
Как импортировать файлы .dta в R

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.