Tuo tietoja R: lue CSV-, Excel-, SPSS-, Stata- ja SAS-tiedostot

Sisällysluettelo:

Anonim

Tietoja voi olla eri muodoissa. Jokaisella formaatilla R: llä on tietty funktio ja argumentti. Tässä opetusohjelmassa kerrotaan, kuinka tietoja tuodaan R.

Tässä opetusohjelmassa opit

  • Lue CSV
  • Lue Excel-tiedostoja
  • readxl_example ()
  • read_excel ()
  • excel_sheets ()
  • Tuo tietoja muista tilasto-ohjelmistoista
  • Lue sas
  • Lue STATA
  • Lue SPSS
  • Tietojen tuonnin parhaat käytännöt

Lue CSV

Yksi laajimmin tietovarastoista on .csv (pilkuilla erotetut arvot) -tiedostomuodot. R lataa joukon kirjastoja käynnistyksen aikana, mukaan lukien utils-paketti. Tämä paketti on kätevä avaamaan csv-tiedostot yhdessä read.csv () -toiminnon kanssa. Tässä on read.csv: n syntakse

read.csv(file, header = TRUE, sep = ",")

Väite :

  • tiedosto : PATH, johon tiedosto on tallennettu
  • header : vahvista, onko tiedostolla otsikko vai ei, otsikossa on oletuksena TOSI
  • sep : symboli, jota käytetään muuttujan jakamiseen. Oletuksena `,`.

Luemme datatiedoston nimen mtcats. Csv-tiedosto tallennetaan verkkoon. Jos .csv-tiedostosi on tallennettu paikallisesti, voit korvata PATH-koodinpätkän. Älä unohda kääriä sitä sisään ''. PATH: n on oltava merkkijonoarvo.

Mac-käyttäjille latauskansion polku on:

 "/Users/USERNAME/Downloads/FILENAME.csv"

Windows-käyttäjälle:

"C:\Users\USERNAME\Downloads\FILENAME.csv"

Huomaa, että meidän on aina määritettävä tiedostonimen laajennus.

  • .csv
  • .xlsx
  • .txt
PATH <- 'https://raw.githubusercontent.com/guru99-edu/R-Programming/master/mtcars.csv'df <- read.csv(PATH, header = TRUE, sep = ',')length(df)

Tuotos:

## [1] 12
class(df$X)

Tuotos:

## [1] "factor"

R palauttaa oletusarvoisesti merkkiarvot tekijänä. Voimme poistaa tämän asetuksen käytöstä lisäämällä stringsAsFactors = FALSE.

PATH <- 'https://raw.githubusercontent.com/guru99-edu/R-Programming/master/mtcars.csv'df <-read.csv(PATH, header =TRUE, sep = ',', stringsAsFactors =FALSE)class(df$X)

Tuotos:

## [1] "character"

Muuttujan X luokka on nyt merkki.

Lue Excel-tiedostoja

Excel-tiedostot ovat erittäin suosittuja data-analyytikoiden keskuudessa. Laskentataulukoita on helppo käsitellä ja joustavia. R on varustettu kirjaston readxl: llä tuoda Excel-laskentataulukkoa.

Käytä tätä koodia

require(readxl)

tarkistaa, onko readxl asennettu koneellesi. Jos asennat r: n r-conda-essentialilla, kirjasto on jo asennettu. Sinun pitäisi nähdä komentoikkunassa:

Tuotos:

Loading required package: readxl. 

Jos paketti ei poistu, voit asentaa sen conda-kirjastoon tai päätelaitteeseen, käytä conda install -c mittner r-readxl.

Käytä seuraavaa komentoa ladataksesi kirjaston tuoda Excel-tiedostoja.

library(readxl)

readxl_example ()

Käytämme esimerkkejä, jotka sisältyvät pakettiin readxl tämän opetusohjelman aikana.

Käytä koodia

readxl_example()

nähdäksesi kaikki käytettävissä olevat laskentataulukot kirjastossa.

Voit tarkistaa clippy.xls-nimisen laskentataulukon sijainnin yksinkertaisesti

readxl_example("geometry.xls")

Jos asennat R: n condalla, laskentataulukot ovat kansiossa Anaconda3 / lib / R / library / readxl / extdata / filename.xls

read_excel ()

Funktiolla read_excel () on paljon hyötyä xls: n ja xlsx-laajennuksen avaamisessa.

Syntaksi on:

read_excel(PATH, sheet = NULL, range= NULL, col_names = TRUE)arguments:-PATH: Path where the excel is located-sheet: Select the sheet to import. By default, all-range: Select the range to import. By default, all non-null cells-col_names: Select the columns to import. By default, all non-null columns

Voimme tuoda laskentataulukot readxl-kirjastosta ja laskea sarakkeiden määrän ensimmäisessä taulukossa.

# Store the path of `datasets.xlsx`example <- readxl_example("datasets.xlsx")# Import the spreadsheetdf <- read_excel(example)# Count the number of columnslength(df)

Tuotos:

## [1] 5

excel_sheets ()

Tiedosto datasets.xlsx koostuu 4 arkista. Voimme selvittää työkirjassa olevat taulukot käyttämällä excel_sheets () -toimintoa

example <- readxl_example("datasets.xlsx")

excel_sheets(example)

Tuotos:

[1] "iris" "mtcars" "chickwts" "quakes"

Jos laskentataulukko sisältää useita taulukoita, on helppo valita tietty taulukko käyttämällä taulukon argumentteja. Voimme määrittää arkin nimen tai arkistohakemiston. Voimme tarkistaa, palauttaako molemmat funktiot saman tuloksen identtisellä ().

example <- readxl_example("datasets.xlsx")quake <- read_excel(example, sheet = "quakes")quake_1 <-read_excel(example, sheet = 4)identical(quake, quake_1)

Tuotos:

## [1] TRUE

Voimme hallita mitä soluja lukea kahdella tavalla

  1. Käytä n_max-argumenttia palauttaaksesi n riviä
  2. Käytä alueen argumenttia yhdistettynä solujen_riveihin tai solujen sarakkeisiin

Esimerkiksi, kun asetamme n_max on 5, tuodaan ensimmäiset viisi riviä.

# Read the first five row: with headeriris <-read_excel(example, n_max =5, col_names =TRUE)

Jos vaihdamme col_names-arvoksi FALSE, R luo otsikot automaattisesti.

# Read the first five row: without headeriris_no_header <-read_excel(example, n_max =5, col_names =FALSE)

iris_no_header

Iris_no_header-tietokehyksessä R loi viisi uutta muuttujaa nimeltä X__1, X__2, X__3, X__4 ja X__5

Voimme myös käyttää argumenttialuetta rivejen ja sarakkeiden valitsemiseen laskentataulukosta. Alla olevassa koodissa käytämme Excel-tyyliä valitaksesi alueen A1 - B5.

# Read rows A1 to B5example_1 <-read_excel(example, range = "A1:B5", col_names =TRUE)dim(example_1)

Tuotos:

## [1] 4 2

Voimme nähdä, että esimerkki_1 palauttaa 4 riviä, joissa on 2 saraketta. Aineistossa on otsikko, että syy siihen, että ulottuvuus on 4x2.

Toisessa esimerkissä käytämme funktiota cell_rows (), joka ohjaa palautettavien rivien aluetta. Jos haluamme tuoda rivit 1–5, voimme asettaa solurivit (1: 5). Huomaa, että solurivit (1: 5) palauttaa saman tuloksen kuin solurivit (5: 1).

# Read rows 1 to 5example_2 <-read_excel(example, range =cell_rows(1:5),col_names =TRUE)dim(example_2)

Tuotos:

## [1] 4 5

Esimerkki_2 on kuitenkin 4x5-matriisi. Iiris-tietojoukossa on 5 saraketta, joissa on otsikko. Palautamme neljä ensimmäistä riviä kaikkien sarakkeiden otsikolla

Jos haluamme tuoda rivejä, jotka eivät ala ensimmäisellä rivillä, meidän on sisällytettävä col_names = EPÄTOSI. Jos käytämme range = cell_rows (2: 5), käy selväksi, että tietokehyksellämme ei ole enää otsikkoa.

iris_row_with_header <-read_excel(example, range =cell_rows(2:3), col_names=TRUE)iris_row_no_header <-read_excel(example, range =cell_rows(2:3),col_names =FALSE)

We can select the columns with the letter, like in Excel.# Select columns A and Bcol <-read_excel(example, range =cell_cols("A:B"))dim(col)

Tuotos:

## [1] 150 2 

Huomaa: range = cell_cols ("A: B"), palauttaa kaikki solut, joiden arvo ei ole nolla. Aineisto sisältää 150 riviä, joten read_excel () palauttaa rivit 150: een. Tämä varmistetaan dim () -toiminnolla.

read_excel () palauttaa NA: n, kun solussa näkyy symboli ilman numeerista arvoa. Voimme laskea puuttuvien arvojen määrän kahden toiminnon yhdistelmällä

  1. summa
  2. is.na

Tässä on koodi

iris_na <-read_excel(example, na ="setosa")sum(is.na(iris_na))

Tuotos:

## [1] 50

Meiltä puuttuu 50 arvoa, jotka ovat setosa-lajeihin kuuluvia rivejä.

Tuo tietoja muista tilasto-ohjelmistoista

Tuomme erilaisia ​​tiedostomuotoja taivas-paketilla. Tämä paketti tukee SAS-, STATA- ja SPSS-ohjelmistoja. Voimme käyttää seuraavaa toimintoa erityyppisten tietojoukkojen avaamiseen tiedoston laajennuksen mukaan:

  • SAS: read_sas ()
  • STATA: read_dta () (tai read_stata (), jotka ovat identtisiä)
  • SPSS: read_sav () tai read_por (). Meidän on tarkistettava laajennus

Näissä funktioissa vaaditaan vain yksi argumentti. Meidän on tiedettävä polku, johon tiedosto on tallennettu. Siinä kaikki, olemme valmiita avaamaan kaikki tiedostot SAS: sta, STATA: sta ja SPSS: stä. Nämä kolme toimintoa hyväksyvät myös URL-osoitteen.

library(haven)

haven mukana tulee conda r-essential muuten siirry linkille tai terminaaliin conda install -c conda-forge r-haven

Lue sas

Esimerkiksi aiomme käyttää IDRE: n pääsytietojoukkoa.

PATH_sas <- 'https://github.com/guru99-edu/R-Programming/blob/master/binary.sas7bdat?raw=true'df <- read_sas(PATH_sas)head(df)

Tuotos:

## # A tibble: 6 x 4## ADMIT GRE GPA RANK##    ## 1 0 380 3.61 3## 2 1 660 3.67 3## 3 1 800 4.00 1## 4 1 640 3.19 4## 5 0 520 2.93 4## 6 1 760 3.00 2

Lue STATA

Voit käyttää STATA-datatiedostoja read_dta (). Käytämme täsmälleen samaa tietoaineistoa, mutta tallennamme .dta-tiedostoon.

PATH_stata <- 'https://github.com/guru99-edu/R-Programming/blob/master/binary.dta?raw=true'df <- read_dta(PATH_stata)head(df)

Tuotos:

## # A tibble: 6 x 4## admit gre gpa rank##    ## 1 0 380 3.61 3## 2 1 660 3.67 3## 3 1 800 4.00 1## 4 1 640 3.19 4## 5 0 520 2.93 4## 6 1 760 3.00 2

Lue SPSS

Käytämme read_sav () -toimintoa SPSS-tiedoston avaamiseen. Tiedostotunniste ".sav"

PATH_spss <- 'https://github.com/guru99-edu/R-Programming/blob/master/binary.sav?raw=true'df <- read_sav(PATH_spss)head(df)

Tuotos:

## # A tibble: 6 x 4## admit gre gpa rank##    ## 1 0 380 3.61 3## 2 1 660 3.67 3## 3 1 800 4.00 1## 4 1 640 3.19 4## 5 0 520 2.93 4## 6 1 760 3.00 2

Tietojen tuonnin parhaat käytännöt

Kun haluamme tuoda tietoja R: ään, on hyödyllistä toteuttaa seuraava tarkistuslista. Se helpottaa tietojen oikeaa tuomista R-tiedostoon:

  • Laskentataulukon tyypillinen muoto on käyttää ensimmäisiä rivejä otsikkona (yleensä muuttujien nimi).
  • Vältä nimeämästä tietojoukkoa tyhjillä välilyönneillä; se voi johtaa tulkintaan erillisenä muuttujana. Vaihtoehtoisesti voit käyttää '_' tai '-.'
  • Lyhyt nimi on suositeltava
  • Älä sisällytä nimeen symbolia: ts. Vaihto_arvo _ $ _ € ei ole oikea. Nimeä se mieluummin: exchange_rate_dollar_euro
  • Käytä NA muuten puuttuviin arvoihin; meidän on puhdistettava muoto myöhemmin.

Yhteenveto

Seuraava taulukko esittää yhteenvedon toiminnosta, jota käytetään erityyppisten tiedostojen tuontiin R: ssä. Sarake yksi ilmoittaa funktioon liittyvän kirjaston. Viimeinen sarake viittaa oletusargumenttiin.

Kirjasto

Tavoite

Toiminto

Oletusargumentit

utils

Lue CSV-tiedosto

read.csv ()

tiedosto, otsikko =, TOSI, sep = ","

lukeaxl

Lue EXCEL-tiedosto

read_excel ()

polku, alue = NULL, sarakkeiden nimet = TOSI

paratiisi

Lue SAS-tiedosto

read_sas ()

polku

paratiisi

Lue STATA-tiedosto

read_stata ()

polku

paratiisi

Lue SPSS-tiedosto

read_sav ()

polku

Seuraava taulukko näyttää eri tapoja tuoda valinta read_excel () -funktiolla.

Toiminto

Tavoitteet

Väitteet

read_excel ()

Lue n rivien lukumäärä

n_max = 10

Valitse rivit ja sarakkeet kuten Excelissä

alue = "A1: D10"

Valitse indeksirivit

alue = solurivit (1: 3)

Valitse sarakkeet kirjaimilla

range = cell_cols ("A: C")