Как да експортирате данни от R в CSV, Excel

Как да експортирате данни от R

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

За да експортирате данни на твърдия диск, имате нужда от пътя на файла и разширение. На първо място, пътят е мястото, където ще се съхраняват данните. В този урок ще видите как да съхранявате данни на:

  • Твърдият диск
  • Google Drive
  • Dropbox

Второ, R позволява на потребителите да експортират данните в различни типове файлове. Ние покриваме основното разширение на файла:

  • CSV
  • XLSX
  • RDS
  • SAS
  • 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, групирани по предавка.

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 в R.

Как да експортирате DataFrame в CSV файл в R

Основният синтаксис на write.csv в R за експортиране на DataFrame в CSV в R:

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.csv в R като write.csv2(), за да разделите редовете с точка и запетая за R експортиране към csv данни.

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

Забележка: Само с педагогическа цел създадохме функция, наречена open_folder(), за да отвори папката на директорията вместо вас. Просто трябва да стартирате кода по-долу и да видите къде се съхранява csv файлът. Трябва да видите имена на файлове table_car.csv за експорт на данни R в 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)

Как да експортирате данни от R към Excel файл

Сега ще научим как да експортираме данни от R в Excel:

Експортирането на данни от R в Excel е тривиално за Windows потребители и по-сложни за потребители на Mac OS. И двамата потребители ще използват библиотеката xlsx за създаване на Excel файл. Малката разлика идва от инсталирането на библиотеката. Наистина библиотеката xlsx използва Java за да създадете файла. Java трябва да бъде инсталиран, ако не присъства във вашата машина за експортиране на Data R в Excel.

Windows Потребители

Ако сте Windows потребител, можете да инсталирате библиотеката директно с conda, за да експортирате рамка с данни в excel R:

conda install -c r r-xlsx

След като инсталирате библиотеката, можете да използвате функцията write.xlsx(). Създава се нова работна книга на Excel в работната директория за R експортиране към данни на 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) Трябва да инсталирате java в R. Препоръчваме ви да инсталирате R и Rstudio с Anaconda. Anaconda управлява зависимостите между библиотеките. В този смисъл Anaconda ще се справи с тънкостите на rJava инсталация.

Първо, трябва да актуализирате conda и след това да инсталирате библиотека. Можете да копирате и поставите следващите два реда код в терминала.

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

След това отворете java в 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")

Експортиране на данни от R към различен софтуер

Експортирането на данни към различен софтуер е толкова просто, колкото импортирането им. „Убежището“ на библиотеката предоставя удобен начин за експортиране на данни

  • spss
  • SAS
  • Stata

Първо, импортирайте библиотеката. Ако нямате „убежище“, можете да отидете тук за да я инсталирате.

library(haven)

SPSS файл

По-долу е кодът за експортиране на данните в софтуер SPSS:

write_sav(df, "table_car.sav")

Експортиране на данни от R към SAS файл

Също толкова просто, колкото spss, можете да експортирате в sas

write_sas(df, "table_car.sas7bdat")

Как да експортирате данни от R към STATA файл

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

write_dta(df, "table_car.dta")

R

Ако искате да запазите рамка с данни или друг R обект, можете да използвате функцията save().

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

Можете да проверите създадените по-горе файлове в настоящата работна директория

Експортиране на данни от R към STATA файл

Взаимодействайте с облачните услуги

И накрая, но не на последно място, R е оборудван с фантастични библиотеки за взаимодействие с облачните изчислителни услуги. Последната част на този урок се занимава с експортиране/импортиране на файлове от:

  • Google Drive
  • Dropbox

Забележка: Тази част от урока предполага, че имате акаунт в Google и Dropbox. Ако не, можете бързо да създадете такъв за – Google Drive: https://accounts.google.com/SignUp?hl=en - Dropbox: https://www.dropbox.com/h

Google Drive

Трябва да инсталирате библиотеката googledrive за достъп до функцията, позволяваща взаимодействие с Google Drive.

Библиотеката все още не е достъпна в Anaconda. Можете да го инсталирате с кода по-долу в конзолата.

install.packages("googledrive")

и отваряте библиотеката.

library(googledrive)

За потребители, които не са conda, инсталирането на библиотека е лесно, можете да използвате функцията install.packages('ИМЕ НА ПАКЕТА) с името на пакета в скобите. Не забравяйте „ “. Имайте предвид, че R трябва да инсталира автоматично пакета в `libPaths(). Струва си да го видите в действие.

Качване в Google Drive

За да качите файл в Google диск, трябва да използвате функцията drive_upload().

Всеки път, когато рестартирате Rstudio, ще бъдете подканени да разрешите достъп до tidyverse 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 Drive

След това ще бъдете пренасочени към Google API, за да разрешите достъпа. Щракнете върху Разреши.

Google Drive

След като удостоверяването приключи, можете да затворите браузъра си.

Google Drive

В конзолата на Rstudio можете да видите обобщението на извършената стъпка. Google успешно качи файла, намиращ се локално на Диск. Google присвои идентификатор на всеки файл в устройството.

Google Drive

Можете да видите този файл в Google Spreadsheet.

drive_browse("table_car")

Изход:

Ще бъдете пренасочени към Google Spreadsheet

Google Drive

Внос от Google Drive

Качете файл от Google Drive с ID е удобно. Ако знаете името на файла, можете да получите неговия идентификатор, както следва:

Забележка: В зависимост от вашата интернет връзка и размера на вашия Диск това отнема време.

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

Google Drive

Съхранили сте ID в променливата 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): Използвайте ID, за да разглеждате файла Google Drive
  • overwrite = TRUE: Ако файлът съществува, презапишете го, в противен случай изпълнението е спряно. За да видите името на файла локално, можете да използвате:

Изход:

Google Drive

Файлът се съхранява във вашата работна директория. Не забравяйте, че трябва да добавите разширението на файла, за да го отворите в 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()

Изход:

Google Drive

Това е бавен процес. Отнема време за изтриване

Експортиране до Dropbox

R взаимодейства с Dropbox чрез библиотеката rdrop2. Библиотеката не е налична и в Anaconda. Можете да го инсталирате през конзолата

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

Трябва да предоставите временен достъп до Dropbox с вашето удостоверение. След извършване на идентификацията, R може да създава, премахва качване и изтегляне във вашия Dropbox.

На първо място, трябва да дадете достъп до акаунта си. Идентификационните данни се кешират по време на цялата сесия.

drop_auth()

Ще бъдете пренасочени към Dropbox за потвърждение на удостоверяването.

Експортиране до Dropbox

Ще получите страница за потвърждение. Можете да го затворите и да се върнете към R

Експортиране до Dropbox

Можете да създадете папка с функцията drop_create().

  • drop_create('my_first_drop'): Създайте папка в първия клон на Dropbox
  • drop_create('First_branch/my_first_drop'): Създайте папка в съществуващата папка First_branch.
drop_create('my_first_drop')

Изход:

Експортиране до Dropbox

В DropBox

Експортиране до 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

На DropBox

Експортиране до 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')

Изход:

Експортиране до Dropbox

Възможно е също да изтриете папка

drop_delete('my_first_drop')

Изход:

Експортиране до Dropbox

Oбобщение

Можем да обобщим всички функции в таблицата по-долу

Библиотека Цел функция
база Експортиране на csv write.csv()
XLSX Експортиране на Excel write.xlsx()
убежище Експортиране на spss write_sav()
убежище Експортиране на sas write_sas()
убежище Експортиране на състояние write_dta()
база Експортиране на Р запази ()
Google Диск Качи Google Drive drive_upload()
Google Диск Отворете Google Drive drive_browse()
Google Диск Извличане на идентификатор на файл drive_get(as_id())
Google Диск Изтегляне от Google Drive изтегляне_google()
Google Диск Премахване на файл от Google Drive drive_rm()
rdrop2 заверка drop_auth()
rdrop2 Създайте папка drop_create()
rdrop2 Качване в Dropbox drop_upload()
rdrop2 Прочетете csv от Dropbox drop_read_csv
rdrop2 Изтриване на файл от Dropbox drop_delete()