Autor návodu: Žaneta Vaníčková

Tento návod popisuje, jak načíst data z excelovské tabulky do prostředí jazyka R.

Použijeme v něm tyto příkazy:

Jdeme na to

Soubor .xlsx je častou formou, ve které se k nám dostanou data, která potřebujeme vyhodnocovat pomocí R. Existuje řada balíčků (packages), díky kterým můžeme tyto data exportovat nebo importovat z nebo do prostředí R. Ale jak sami brzo zjistíte, nahrát data z excelu nemusí být vždy tak úplně jednoduché. Někteří proto ukládají soubor do formátu .csv a ten pak importují, protože s ním už tolik problému při nahrávání nebývá. Další z moznosti je integrovat R primo do excelu pomoci doplňku Rexcel.

Ukážeme si tedy postup, kterým tyto problémy (při rozumné velikosti dat) obejdeme a data načteme přímo z Excelu.

Použijeme k tomu funkci readClipboard, která umí načíst data ze schránky Windows - tedy načte to, co jste předtím v jiné aplikaci zkopírovali.

Vyzkoušíme si to na datasetu auta-1.xlsx, který můžete stáhnout odsud, ale použít můžete jakýkoliv jiný Excel.

Nejprve označte data, která chcete nahrát do R, a zkopírujte je (Ctrl + C).

Přejděte do R studia. V něm data potřebujete vložit. To uděláte tímto příkazem, který do dat načte obsah schránky WIndows:

Funkce head() zobrazí prvních několik řádků dat.

Pokud byste chtěli zobrazit všechna data, zapište jen:

Sloupce v Excelu jsou oddělené tabulátorem (\t). Funkce readClipboard() sama o sobě neumožňuje nastavit oddělovač, hodí se spíše pro rychlé načtení řádkových dat. Pro načtení tabulky tedy použijeme funkci read.table().

vysvětlení vstupních parametrů funkce read.table():

  • file = ‘clipboard’ -  zdroj dat nastavíme na clipboard
  • sep = “\t” - oddělovačem sloupců je v excelu tabulátor
  • header = TRUE - první řádek dat obsahuje názvy sloupců
  • stringsAsFactors = FALSE - nebudeme používat datový typ factor

Kurzy, na kterých se věnujeme jazyku R:

1 Komentář

  1. dobrý den, děkuji za návod, chci se prosím zeptat, pokud bych chtěl využívat modul Rexcel, tak si musím zakoupit licenci nebo to můžu využívat zdarma? Předem děkuji za odpověď.

    S pozdravem

Napsat komentář

Vaše emailová adresa nebude publikována.

*

smazat formulářOdeslat komentář