Учебники

18) R Экспорт данных

Как экспортировать данные из R

В этом уроке мы узнаем, как экспортировать данные из среды R в различные форматы.

Чтобы экспортировать данные на жесткий диск, вам нужен путь к файлу и расширение. Прежде всего, путь — это место, где будут храниться данные. В этом уроке вы увидите, как хранить данные:

  • Жесткий диск
  • Гугл драйв
  • Dropbox

Во-вторых, R позволяет пользователям экспортировать данные в различные типы файлов. Мы рассмотрим расширение существенного файла:

  • CSV
  • XLSX
  • RDS
  • ПАВ
  • SPSS
  • STATA

В целом, нетрудно экспортировать данные из R.

В этом уроке вы узнаете

Экспорт на жесткий диск

Для начала вы можете сохранить данные непосредственно в рабочий каталог. Следующий код печатает путь вашего рабочего каталога:

directory <-getwd()
directory

Вывод:

## [1] "/Users/15_Export_to_do"	

По умолчанию файл будет сохранен по указанному ниже пути.

Для Mac OS:

/Users/USERNAME/Downloads/	

Для Windows:

C:\Users\USERNAME\Documents\

Конечно, вы можете установить другой путь. Например, вы можете изменить путь к папке загрузки.

Создать фрейм данных

Прежде всего, давайте импортируем набор данных mtcars и получим среднее значение mpg и disp, сгруппированное по gear.

library(dplyr)
df <-mtcars % > %
    select(mpg, disp, gear) % > %
    group_by(gear) % > %
    summarize(mean_mpg = mean(mpg), mean_disp = mean(disp))
df

Выход :

## # A tibble: 3 x 3
##	gear mean_mpg mean_disp
##	<dbl>	<dbl>	lt;dbl>
## 1	3 16.10667  326.3000
## 2 	4 24.53333  123.0167
## 3	5 21.38000  202.4800

Таблица содержит три строки и три столбца. Вы можете создать файл CSV с помощью функции write.csv ().

Экспорт CSV

Основной синтаксис:

write.csv(df, path)
arguments
-df: Dataset to save. Need to be the same name of the data frame in the environment.
-path: A string. Set the destination path. Path + filename + extension i.e. "/Users/USERNAME/Downloads/mydata.csv" or the filename + extension if the folder is the same as the working directory

Пример:

write.csv(df, "table_car.csv")

Код Объяснение

  • write.csv (df, «table_car.csv»): создайте файл CSV на жестком диске:
    • df: имя фрейма данных в среде
    • «table_car.csv»: назовите файл table_car и сохраните его как csv

Примечание . Вы можете использовать функцию write.csv2 () для разделения строк точкой с запятой.

write.csv2(df, "table_car.csv")

Примечание : только для педагогических целей мы создали функцию open_folder (), чтобы открыть папку каталога для вас. Вам просто нужно запустить приведенный ниже код и посмотреть, где хранится CSV-файл. Вы должны увидеть имена файлов table_car.csv.

# Run this code to create the function
open_folder <-function(dir){
	if (.Platform['OS.type'] == "windows"){
	shell.exec(dir)  
	} else {
	system(paste(Sys.getenv("R_BROWSER"), dir))
  }
}
# Call the function to open the folder
open_folder(directory)

Экспорт в файл Excel

Экспорт данных в Excel тривиален для пользователей Windows и сложнее для пользователей Mac OS. Оба пользователя будут использовать библиотеку xlsx для создания файла Excel. Небольшая разница связана с установкой библиотеки. Действительно, библиотека xlsx использует Java для создания файла. Java должна быть установлена, если она отсутствует на вашем компьютере.

Пользователи Windows

Если вы пользователь Windows, вы можете установить библиотеку напрямую с помощью conda:

conda install -c r r-xlsx

После установки библиотеки вы можете использовать функцию write.xlsx (). Новая рабочая книга Excel создается в рабочем каталоге

library(xlsx)
write.xlsx(df, "table_car.xlsx")

Если вы пользователь Mac OS, вам необходимо выполнить следующие шаги:

  • Шаг 1: Установите последнюю версию Java
  • Шаг 2: Установите библиотеку rJava
  • Шаг 3: Установите библиотеку xlsx

Шаг 1) Вы можете скачать Java с официального сайта Oracle и установить его.

Вы можете вернуться в Rstudio и проверить, какая версия Java установлена.

system("java -version")

На момент обучения последняя версия Java была 9.0.4.

Шаг 2) Вам необходимо установить rjava в R. Мы рекомендуем вам установить R и Rstudio с Anaconda. Анаконда управляет зависимостями между библиотеками. В этом смысле Anaconda будет работать со сложностями установки rJava.

Прежде всего, вам необходимо обновить conda, а затем установить библиотеку . Вы можете скопировать и вставить следующие две строки кода в терминал.

conda - conda update
conda install -c r r-rjava

Далее откройте RJAVA в Rstudio

library(rJava)

Шаг 3) Наконец, пришло время установить xlsx. Еще раз, вы можете использовать conda, чтобы сделать это:

conda install -c r r-xlsx

Как и пользователи Windows, вы можете сохранять данные с помощью функции write.xlsx ()

library(xlsx)

Вывод:

## Loading required package: xlsxjars
write.xlsx(df, "table_car.xlsx")

Экспорт в другое программное обеспечение

Экспортировать данные в другое программное обеспечение так же просто, как импортировать их. Библиотека «Гавань» предоставляет удобный способ экспорта данных в

  • SPSS
  • ПАВ
  • Stata

Прежде всего, импортируйте библиотеку. Если у вас нет «убежища», вы можете зайти сюда, чтобы установить его.

library(haven)		

SPSS файл

Ниже приведен код для экспорта данных в программное обеспечение SPSS:

write_sav(df, "table_car.sav")	

Экспорт файла SAS

Так же просто, как spss, вы можете экспортировать в sas

write_sas(df, "table_car.sas7bdat")

Экспорт файла STATA

Наконец, библиотека убежища позволяет записать файл .dta.

write_dta(df, "table_car.dta")

р

Если вы хотите сохранить фрейм данных или любой другой объект R, вы можете использовать функцию save ().

save(df, file ='table_car.RData')

Вы можете проверить файлы, созданные выше в настоящем рабочем каталоге

Взаимодействовать с облачными сервисами

И последнее, но не менее важное: R оснащен фантастическими библиотеками для взаимодействия со службами облачных вычислений. В последней части этого руководства рассматриваются файлы экспорта / импорта из:

  • Гугл драйв
  • Dropbox

Примечание . В этой части руководства предполагается, что у вас есть аккаунт в Google и Dropbox. Если нет, вы можете быстро создать его для — Google Диска: https://accounts.google.com/SignUp?hl=en — Dropbox: https://www.dropbox.com/h

Гугл драйв

Вам необходимо установить библиотеку googledrive для доступа к функции, позволяющей взаимодействовать с Google Drive.

Библиотека еще не доступна в Анаконде. Вы можете установить его с помощью приведенного ниже кода в консоли.

install.packages("googledrive")	

и вы открываете библиотеку.

library(googledrive)

Для не-conda пользователей установка библиотеки проста, вы можете использовать функцию install.packages (‘NAME OF PACKAGE) с именем пакета в круглых скобках. Не забывайте «». Обратите внимание, что R должен устанавливать пакет в `libPaths () автоматически. Это стоит увидеть в действии.

Загрузить на Google Drive

Чтобы загрузить файл на Google диск, вам нужно использовать функцию drive_upload ().

Каждый раз, когда вы перезапускаете Rstudio, вам будет предложено разрешить доступ к Google Drive.

Основной синтаксис drive_upload ()

drive_upload(file, path = NULL, name = NULL)
arguments:
- file: Full name of the file to upload (i.e., including the extension)
- path: Location of the file- name: You can rename it as you wish. By default, it is the local name.	

После запуска кода необходимо подтвердить несколько вопросов

drive_upload%<("table_car.csv", name ="table_car")

Вывод:

## Local file: 
## * table_car.csv 
## uploaded into Drive file: 
## * table_car: 1hwb57eT-9qSgDHt9CrVt5Ht7RHogQaMk 
## with MIME type: 
## * text/csv

Вы вводите 1 в консоли, чтобы подтвердить доступ

Затем вы будете перенаправлены на Google API, чтобы разрешить доступ. Нажмите Разрешить.

После завершения аутентификации вы можете выйти из браузера.

В консоли Rstudio вы можете увидеть итоги выполненного шага. Google успешно загрузил файл, расположенный локально на диске. Google присвоил идентификатор каждому файлу на диске.

Вы можете увидеть этот файл в Google Spreadsheet.

drive_browse("table_car")

Вывод:

Вы будете перенаправлены на электронную таблицу Google.

Импорт с Google Диска

Загрузить файл с Google Drive с идентификатором удобно. Если вы знаете имя файла, вы можете получить его идентификатор следующим образом:

Примечание : в зависимости от вашего интернет-соединения и размера вашего диска, это может занять некоторое время.

x <-drive_get("table_car")
as_id(x)

Вы сохранили идентификатор в переменной x. Функция drive_download () позволяет загружать файл с Google Drive.

Основной синтаксис:

drive_download(file, path = NULL, overwrite = FALSE)
arguments:
- file:  Name or id of the file to download
-path: Location to download the file. By default, it is downloaded to the working directory and the name as in Google Drive
-overwrite = FALSE: If the file already exists, don't overwrite it. If set to TRUE, the old file is erased and replaced by the new one.

Вы можете наконец загрузить файл:

download_google & lt; - drive_download(as_id(x), overwrite = TRUE)

Код Объяснение

  • drive_download (): функция для загрузки файла с Google Drive
  • as_id (x): используйте идентификатор для просмотра файла на Google Диске
  • overwrite = TRUE: если файл существует, перезаписать его, иначе выполнение остановлено. Для локального просмотра имени файла вы можете использовать:

Вывод:

Файл хранится в вашем рабочем каталоге. Помните, вам нужно добавить расширение файла, чтобы открыть его в R. Вы можете создать полное имя с помощью функции paste () (то есть table_car.csv)

google_file <-download_google$local_path
google_file
path <-paste(google_file, ".csv", sep = "")
google_table_car <-read.csv(path)
google_table_car

Вывод:

##   X gear mean_mpg mean_disp
## 1 1    3 16.10667  326.3000
## 2 2    4 24.53333  123.0167
## 3 3    5 21.38000  202.4800

Наконец, вы можете удалить файл с вашего диска Google.

## remove file
drive_find("table_car") %>%drive_rm()

Вывод:

Это медленный процесс. Занимает время для удаления

Экспорт в Dropbox

R взаимодействует с Dropbox через библиотеку rdrop2. Библиотека также недоступна в Анаконде. Вы можете установить его через консоль

install.packages('rdrop2')
library(rdrop2)

Вам необходимо предоставить временный доступ к Dropbox с вашими учетными данными. После того, как идентификация завершена, R может создать, удалить выгрузку и загрузить в свой Dropbox.

Прежде всего, вам необходимо предоставить доступ к своей учетной записи. Учетные данные кэшируются в течение всего сеанса.

drop_auth()

Вы будете перенаправлены на Dropbox для подтверждения аутентификации.

Вы получите страницу подтверждения. Вы можете закрыть его и вернуться к R

Вы можете создать папку с помощью функции drop_create ().

  • drop_create (‘my_first_drop’): создать папку в первой ветви Dropbox
  • drop_create (‘First_branch / my_first_drop’): создать папку в существующей папке First_branch.
drop_create('my_first_drop')

Вывод:

В DropBox

Чтобы загрузить файл .csv в свой Dropbox, используйте функцию drop_upload ().

Основной синтаксис:

drop_upload(file, path = NULL, mode = "overwrite")
arguments:
- file: local path
- path: Path on Dropbox 
- mode = "overwrite":  By default, overwrite an existing file. If set to `add`, the upload is not completed.
drop_upload('table_car.csv', path = "my_first_drop")

Вывод:

На DropBox

Вы можете прочитать CSV-файл из Dropbox с помощью функции drop_read_csv ()

dropbox_table_car <-drop_read_csv("my_first_drop/table_car.csv")
dropbox_table_car

Вывод:

##   X gear mean_mpg mean_disp
## 1 1    3 16.10667  326.3000
## 2 2    4 24.53333  123.0167
## 3 3    5 21.38000  202.4800

Когда вы закончили использовать файл и хотите удалить его. Вам нужно записать путь к файлу в функции drop_delete ()

drop_delete('my_first_drop/table_car.csv')

Вывод:

Также можно удалить папку

drop_delete('my_first_drop')

Вывод:

Резюме

Мы можем суммировать все функции в таблице ниже

Библиотека

Задача

функция

база

Экспорт CSV

write.csv ()

XLSX

Экспорт Excel

write.xlsx ()

убежище

Экспорт SPSS

write_sav ()

убежище

Экспорт SAS

write_sas ()

убежище

Экспортировать данные

write_dta ()

база

Экспорт R

спасти()

Гугл драйв

Загрузить Google Диск

drive_upload ()

Гугл драйв

Открыть в Google Диске

drive_browse ()

Гугл драйв

Получить идентификатор файла

drive_get (as_id ())

Гугл драйв

Скачать с Google Диска

download_google ()

Гугл драйв

Удалить файл с Google Диска

drive_rm ()

rdrop2

Authentification

drop_auth ()

rdrop2

Создать папку

drop_create ()

rdrop2

Загрузить в Dropbox

drop_upload ()

rdrop2

Читать CSV из Dropbox

drop_read_csv

rdrop2

Удалить файл из Dropbox

drop_delete ()