Adatok importálása R-ben

Hasonló dokumentumok
Az R statisztikai és grafikai környezet. Jeszenszky Péter Debreceni Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.hu

HASZNÁLATI ÚTMUTATÓ DOLGOZÓK IMPORTÁLÁSA KULCS BÉR PROGRAMBA AZ ONLINE MUNKAIDŐ NYILVÁNTARTÓ RENDSZERBŐL. Budapest, november 08.

Excel ODBC-ADO API. Tevékenységpontok: - DBMS telepítés. - ODBC driver telepítése. - DSN létrehozatala. -Excel-ben ADO bevonása

Könyvtári címkéző munkahely

Technikai információk fejlesztőknek

Leíró statisztika. Adatok beolvasása az R-be és ezek mentése

Az R használata (tárgyalt R verzió: ) Jeszenszky Péter Debrecen Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.hu

Saját Subversion tároló üzemeltetése i. Saját Subversion tároló üzemeltetése

Summer of LabVIEW The Sunny Side of System Design

DataScope program SE/SP-300 távadókhoz HASZNÁLATI UTASÍTÁS

Az R adatelemzési nyelv alapjai I.

Az alábbi kód egy JSON objektumot definiál, amiből az adtokat JavaScript segítségével a weboldal tartalmába ágyazzuk.

einvoicing Elektronikus számlázás Ügyfélportál Felhasználói kézikönyv Ügyfélportál V Page 1 of 12

Komputeralgebra rendszerek

OpenOffice.org mint fejlesztési platform

Importálás. más típusú (pl:.imp,.xml,.xkr,.xcz) állomány beimportálása a nyomtatványkitöltő programba

OpenOffice Pilot projekt az NFGM-ben

Navigációs GPS adatok kezelése QGIS programmal (1.4 verzió) Összeállította dr. Siki Zoltán

Az R nyelv. Jeszenszky Péter Debreceni Egyetem, Informatikai Kar június 12.

Adóhátralék kezelés egyszerűen. Használati útmutató

1. Alapok. Programozás II

ELTE SAP Excellence Center Oktatóanyag 1

Adatelemzés SAS Enterprise Guide használatával. Soltész Gábor solteszgabee[at]gmail.com

Rendszerkezelési útmutató

Az R használata. Jeszenszky Péter Debreceni Egyetem, Informatikai Kar Utolsó módosítás: június 3.

MÉRY Android Alkalmazás

Szathmáry László Debreceni Egyetem Informatikai Kar

RHadoop. Kocsis Imre Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Adabáziselérés ODBC-n keresztül utasításokkal C#-ban

Magyar Nemzeti Bank FELHASZNÁLÓI SEGÉDLET

Multimédiás adatbázisok

II. Mérés SZÉCHENYI ISTVÁN EGYETEM GYŐR TÁVKÖZLÉSI TANSZÉK

JavaScript bűvésztrükkök, avagy PDF olvasó és böngésző hackelés

A telepítési útmutató tartalma

Szerializáció. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Szerializáció / 22

OCSP Stapling. Az SSL kapcsolatok sebességének növelése Apache, IIS és NginX szerverek esetén 1(10)

Egységes és objektumközpontú adatbázis-kezelés (2. rész)

CSALÁDFAKÉSZÍTŐ PROGRAMOK

Felhasználó által definiált adattípus

Munkaidő adatok, jelenléti ív adatok importálása

Adatbázis alapú rendszerek gyakorlat Adatbázis alapú alkalmazásfejlesztés Java, C# környezetben

Molekuláris evolúció második gyakorlat

Kormányzati Elektronikus Aláíró és Aláírás-ellenőrző Szoftver

Teljesítményértékelések eredményeinek rögzítése a Neptun Egységes Tanulmányi Rendszerben

A kontrolladat-szolgáltatás elkészítése

PwC EKAER Tool felhasználói leírás május

Listák, szótárak, fájlok Listák, szótárak, fájlok

I-SZÁMLA KFT. VEVŐI FELHASZNÁLÓI FIÓK HASZNÁLATI ÚTMUTATÓ

Flash és PHP kommunikáció. Web Konferencia 2007 Ferencz Tamás Jasmin Media Group Kft

BaBér bérügyviteli rendszer telepítési segédlete év

Az importálás folyamata Felhasználói dokumentáció verzió 2.1.

RapidMiner telepítés i. RapidMiner telepítés

Smart Strategic Planner

VirtueMart bővítmény letölthető termékek eladásához

KIRA. KIRA rendszer. Telepítési útmutató v1

Rövid leírás a Make Your Mark szoftver használatához

Írjon olyan programot a standard könyvtár alkalmazásával, amely konzolról megadott valós adatokból meghatározza és kiírja a minimális értékűt!

BaBér. Bérügyviteli rendszer. Telepítési segédlet 2014.

Adatbázis rendszerek Gy: Az adattárolás fejlődése

opensuse 10.3 Érettségi változat telepítése

ADÓRAKTÁRI MODUL RÖVID BEMUTATÁSA

Felhasználói dokumentáció. a TávTagTár programhoz. Készítette: Nyíri Gábor, hdd@nc-studio.com GDF Abakusz regisztrációs kód: GDFAba43

Programozás II. 2. gyakorlat Áttérés C-ről C++-ra

Az állományokban UTF-8 kódolással magyar betűk is vannak, ezért az az Unicode (UTF-8) kódolást.

Thermo1 Graph. Felhasználói segédlet

13. Fájlformátumok. Schulcz Róbert Madarassy László 13. Fájlformátumok v

Samsung GT-S7230 (Wave 723) Exchange ActiveSync beállítása Virtualoso levelezésre

SZOFTVERES SZEMLÉLTETÉS A MESTERSÉGES INTELLIGENCIA OKTATÁSÁBAN _ Jeszenszky Péter Debreceni Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.

WebEC kliens számítógép telepítése és szükséges feltételek beállítása, az alábbi ellenőrző lista alapján történik.

HORVÁTH ZSÓFIA 1. Beadandó feladat (HOZSAAI.ELTE) ápr 7. 8-as csoport

Programozás Minta programterv a 1. házi feladathoz 1.

A PiFast program használata. Nagy Lajos

Valimed API. REST API a magyarországi orvos pecsétszámok validálására

Tanulmányi eredmények exportálasa (KIR)

A LOGSYS GUI. Fehér Béla Raikovich Tamás, Laczkó Péter BME MIT FPGA laboratórium

Adatbázis rendszerek 7. előadás State of the art

Cafetéria nyilvántartás

FELHASZNÁLÓI LEÍRÁS a DIMSQL Integrált Számviteli Rendszer Bankterminál moduljának használatához

Samsung GT-S7230 (Wave 723) Exchange ActiveSync beállítása Virtualoso levelezésre

Hálózatos beállítás. A Novitax ügyviteli programrendszerek hálózatos beállítása a következők alapján történhet:

Di1611/Di2011. KEZELÉSI ÚTMUTATÓ: Twain

Innovation Delivered. Szekeres Csaba. M-Prospect Kft. Fordítási és tolmácsolási üzletágvezető, SDL Trados partner

MicroSigner Közvetítő Szerver fejlesztői dokumentáció

VBA makrók aláírása Office XP/2002/2003 esetén

Processzusok (Processes), Szálak (Threads), Kommunikáció (IPC, Inter-Process Communication)

Az internet az egész világot behálózó számítógép-hálózat.

A Riello-UPS az informatika világában

INDULÓ ÉS TUDÁSORIENTÁLT NON PROFIT SZERVEZET ÖNNÖN TUDÁSMENEDZSELÉSE LÉVAI ANDRÁS 1

Az Outlook levelező program beállítása tanúsítványok használatához

Útmutató a MATARKA adatbázisból való adatátvételhez

Elemi alkalmazások fejlesztése I.

Adatbázis-kezelés ODBC driverrel

Leltár, leltárazás. Készlet leltár, leltárazás

SQL Backup and FTP. A program telepítésének menete. A szoftvert a következő weboldalról ingyenesen tölthető le:

Tanúsítvány és hozzá tartozó kulcsok feltöltése Gemalto TPC IM CC és ID Classic 340 kártyára

SQUID. Forrás:

Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015

Programozás 6. Dr. Iványi Péter

NAV nyomtatványok kitöltésének támogatása

Átírás:

Adatok importálása R-ben Jeszenszky Péter Debreceni Egyetem, Informatikai Kar jeszenszky.peter@inf.unideb.hu Utolsó módosítás: 2019. június 11.

Telepítendő csomagok A példák kipróbálásához telepítendő csomagok: reshape2 splitstackshape tidyverse data.table R.utils (a data.table csomag használja gz és bz2 állományok olvasásához) XML 2

Objektumok tárolása állományokban Az R által a memóriában kezelt objektumokat állományokba lehet menteni. A save() függvény az argumentumként adott objektumokat menti. A save.image() függvény valamennyi a memóriában tárolt objektumot menti. Az így elmentett állományokat a load() függvénnyel lehet a memóriába betölteni. A tárolás alapértelmezésben az R saját bináris formátumában történik. Az ascii = TRUE argumentum megadásával szöveges állományba történik a mentés. 3

URL-ek használata Az állományokat beolvasó számos függvény, mint például a read.table() vagy a data.table csomag fread() függvénye, állományelérési útvonalak helyett URL-eket is elfogad argumentumként. A download.file() függvény állományok letöltésére szolgál. Ha nem elegendőek a függvény lehetőségei, használjuk a httr csomagot. 4

Tömörített állományok (1) Tömörített állományok az állományrendszerből történő beolvasását teszik lehetővé a base csomag bzfile(), gzfile(), xzfile(), és unz() függvényei. További információk:?connections 5

Tömörített állományok (2) Példa: read.csv(bzfile("file.csv.bz2")) read.csv(gzfile("file.csv.gz")) read.csv(xzfile("file.csv.xz")) read.csv(unz("file.zip", "file.csv")) # a fentiekkel ekvivalensek az alábbiak is: read.csv("file.csv.bz2") read.csv("file.csv.gz") read.csv("file.csv.xz") 6

Tömörített állományok (3) A data.table csomag fread() függvénye URL-ről is be tud olvasni gz és bz2 tömörített állományt. Ehhez az R.utils csomag rendelkezésre állása szükséges. Példa: fread("http://example.com/file.csv.gz") fread("http://example.com/file.csv.bz2") 7

Formátumok CSV (TSV) MS Excel JSON XML 8

CSV (1) A CSV (TSV) állományok jelentik a legbiztonságosabb módját a más szoftverekkel állományok révén történő kommunikációnak. Ilyen állományokat minden szoftver tud írni és olvasni. 9

CSV (2) Táblázatos adatok szöveges állományokból történő beolvasására szolgálnak az alábbi függvények: read.table() read.csv() (mezőelválasztó: ",", decimális elválasztó: ".") read.csv2() (mezőelválasztó: ";", decimális elválasztó: ",") read.delim() (mezőelválasztó: "\t", decimális elválasztó: ".") read.delim2() (mezőelválasztó: "\t", decimális elválasztó: ",") A függvények egy adatkeretet adnak vissza. A read.csv(), read.csv2(), read.delim() és read.delim2() függvények a read.table() függvényt hívják meg. További információk:?read.table 10

CSV (3) Táblázatos adatok (adatkeretek és mátrixok) szöveges állományokba történő kiírására szolgálnak az alábbi függvények: write.table() write.csv() (mezőelválasztó: ",", decimális elválasztó: ".") write.csv2() (mezőelválasztó: ";", decimális elválasztó: ",") A write.csv() és write.csv2() függvények a write.table() függvényt hívják meg. További információk:?write.table 11

CSV (4) Példa: Az adatok forrása: United States Geological Survey Earthquake Hazards Program https://earthquake.usgs.gov/earthquakes/feed/v1.0/ csv.php library(lubridate) # az ymd_hms() függvény használatához szükséges X <- read.csv("https://earthquake.usgs.gov/earthquakes/feed/v1.0/summar row.names = "id", as.is = c("time", "updated")) X <- transform(x, time = ymd_hms(time), updated = ymd_hms(updated)) str(x) summary(x) 12

CSV (5) A read.table() függvény nem alkalmas túl nagy adatállományok beolvasásához! Példa: Az adatok forrása: IMDb Datasets https://www.imdb.com/interfaces/ Az alábbi adatállomány mérete tömörítve kb. 100 MB, összesen közel 6 millió sort tartalmaz. tmp <- tempfile(fileext = ".gz") download.file("https://datasets.imdbws.com/title.basics.tsv.gz", tmp) R.utils::hsize(file.size(tmp), units = "MB") # "100.8 MB" X <- read.delim(tmp, header = TRUE, na.strings = "\\N", nrows = 1000) 13

CVS (6) Ajánlott csomag nagy adatállományhoz: data.table További információk: https://github.com/rdatatable/data.table/wiki 14

CSV (7) Példa: Az adatok forrása: IMDb Datasets https://www.imdb.com/interfaces/ library(data.table) tmp <- tempfile(fileext = ".gz") download.file("https://datasets.imdbws.com/title.basics.tsv.gz", tmp) X <- fread(tmp, sep = "\t", na.strings = "\\N", quote = "", verbose = TRUE) class(x) dim(x) summary(x) 15

CVS (8) RStudio: CSV (TSV) állományok importálását segítik a File Import Dataset From Text menüpontok. A util és a readr csomagok függvényei kerülnek meghívásra megfelelően felparaméterezve, melyhez a beállításokat a felhasználó szolgáltatja párbeszédablakokban. 16

MS Excel (1) Ajánlott csomag: readxl Automatikusan telepítésre kerül a tidyverse csomagokkal együtt. Probléma: nem adható meg URL argumentumként 17

MS Excel (2) Példa: Az adatok forrása: World Bank Open Data Population, total https://data.worldbank.org/indicator/sp.pop.totl library(readxl) tmp <- tempfile() download.file("http://api.worldbank.org/v2/en/indicat X <- read_excel(tmp, skip = 3) 18

MS Excel (3) RStudio: MS Excel állományok importálását segíti a File Import Dataset From Excel menüpont. A readxl csomag read_excel() függvénye kerül meghívásra megfelelően felparaméterezve, melyhez a beállításokat a felhasználó szolgáltatja egy párbeszédablakban. 19

JSON (1) Ajánlott csomag: jsonlite Automatikusan telepítésre kerül a tidyverse csomagokkal együtt. 20

JSON (2) Példa: library(jsonlite) json <- tojson(iris) print(json) json <- tojson(iris, pretty = TRUE) print(json) write(json, "iris.json") X <- fromjson(tojson(iris)) istrue(all.equal(iris, X)) # FALSE X <- transform(x, Species = factor(species)) istrue(all.equal(iris, X)) # FALSE identical(iris, X) # FALSE 21

JSON (3) Példa: Az adatok forrása: https://github.com/r-hub/cranlogs.app library(jsonlite) X <- fromjson("https://cranlogs.r-pkg.org/top/last-month/10") str(x) downloads <- transform(x$downloads, downloads = as.integer(downloads)) str(downloads) summary(downloads) 22

XML (1) Javasolt csomag: XML 23

XML (2) Példa: Az adatok forrása: World Bank Indicators API https://datahelpdesk.worldbank.org/knowledgebase/a rticles/889392-about-the-indicators-api-documentat ion library(xml) doc <- xmlparse("http://api.worldbank.org/v2/country/") root <- xmlroot(doc) countries <- xmltodataframe(doc) 24

XML (3) Példa (folytatás): library(magrittr) xmlname(root) # a gyökérelem neve xmlsize(root) # a gyökérelem gyermekeinek száma root[[1]] # a gyökérelem első gyermeke root[[1]][[2]] # a gyökérelem első gyermekének második # gyermeke root[[1]][[2]] %>% xmlvalue() root[[1]] %>% xmlattrs() # a gyökérelem első # gyermekének attribútumai root[[1]] %>% xmlattrs() #> ["id"] 25

XML (4) Példa (folytatás): xpathsapply(root, "//wb:iso2code", xmlvalue) 26

További ajánlott olvasnivaló R Data Import/Export https://cran.r-project.org/doc/manuals/r-data.ht ml Karlijn Willems. This R Data Import Tutorial Is Everything You Need. November 20th, 2018. https://www.datacamp.com/community/tutorials/rdata-import-tutorial Karlijn Willems. Importing Data Into R Part Two. March 18th, 2019. https://www.datacamp.com/community/tutorials/i mporting-data-r-part-two 27