Úvod do dátových rámcov v R
Dátový rámec je 2D (dvojrozmerná) maticová štruktúra, v ktorej sú akceptované rôzne typy údajov, ako sú znaky, číselné údaje atď. Dátový rámec je podmnožinou zoznamu, ktorý má každú zložku rovnakej dĺžky. Dátový rámec je v podstate tabuľka, v ktorej každý stĺpec obsahuje hodnoty jednej premennej a každý riadok obsahuje jednu sadu hodnôt z každého stĺpca.
Existujú určité charakteristiky dátového rámca.
- Názov stĺpca je povinný
- Názvy riadkov by mali byť jedinečné
- Počet položiek v každom stĺpci by mal byť rovnaký
Kroky na vytvorenie dátových rámcov v R
Začnime vytvorením dátového rámca, ktorý je vysvetlený nižšie,
Krok 1: Vytvorte dátový rámec triedy v škole.
kód:
tenthclass = data.frame(roll_number = c(1:5), Name = c("John", "Sam", "Casey", "Ronald", "Mathew"),
Marks = c(77, 87, 45, 68, 95), stringsAsFactors = FALSE)
print(tenthclass)
Keď spustíme tento kód, dostaneme taký dátový rámec.
Výkon:
V našom príklade je dátový rámec veľmi malý, ale v skutočnom živote pri riešení problému máme veľa údajov. Aby sme pochopili štruktúru údajov, ktoré odovzdávame na funkciu Str ().
Krok 2: Do nášho kódu pridáme riadok pod.
kód:
Str(tenthclass)
Keď spustíme celý kód, dostaneme výstup.
Výkon:
Vyššie uvedený výstup znamená, že máme 5 pozorovaní 3 premenných. Potom vysvetľuje typ údajov každej premennej. Rovnako ako v našom príklade je číslo role celé číslo, meno je znak a značky sú očíslované.
Keď pochopíme štruktúru údajov, prejdeme ďalej uvedeným kódom, aby sme štatisticky lepšie porozumeli údajom.
Krok 3: Teraz použijeme funkciu Summary ()
kód:
summary(tenthclass)
Výkon:
Zhrnutie poskytuje lepšie pochopenie našich údajov. Bude nám to znamenať, stredný, kvartilný, Max a Min. Tieto veci nám pomôžu urobiť lepšie rozhodnutie.
Ako extrahovať údaje z dátových rámcov v R?
Tu budeme pokračovať v uvedenom prípade. Predpokladajme, že chceme poznať meno študenta v triede desiate, len meno. Ako teda extrahujeme?
Náš dátový rámec vyzerá takto.
roll_number Name Marks
1 1 John 77
2 2 Sam 87
3 3 Casey 45
4 4 Ronald 68
5 5 Mathew 95
Aby sme dostali iba meno ako výstup, odovzdáme nasledujúci kód.
kód:
onlyname = tenthclass$Name
print(onlyname)
Výkon:
Ak tu zlomíme kód, vložíme znak dolára medzi názov nášho dátového rámca a názov premennej, ktorú chceme použiť ako výstup.
Teraz zvážte situáciu, učiteľ chce vedieť všetko o hode 2, ako je to, aké je jeho meno a koľko strelil.
Tu potrebujeme všetko, čo sa týka čísla 2, takže odovzdáme ďalej uvedený kód.
kód:
result_rollnumber2 = tenthclass(c(2), c(1:3)) print(result_rollnumber2)
Výkon:
Rozbaľte v dátových rámcoch
Dátový rámec možno zväčšiť a zmenšiť veľkosť pridaním alebo odstránením stĺpcov a riadkov.
1. Pridajte riadok
Máme dva dátové rámce. Jeden dátový rámec patrí do desiatej časti triedy A a druhý dátový rámec patrí do desiatej časti triedy B. Teraz sa tieto rôzne oddiely spájajú do jednej triedy.
Príklad č. 1: Trieda 10 A
kód:
tenthclass_sectionA = data.frame(roll_number = c(1:5),
Name = c("John", "Sam", "Casey", "Ronald", "Mathew"),
Marks = c(77, 87, 45, 68, 95), stringsAsFactors = FALSE)
print(tenthclass_sectionA)
Výkon:
Príklad č. 2: Trieda 10 B
kód:
tenthclass_sectionB = data.frame(roll_number = c(6:10), Name = c("Ria", "Justin", "Bon", "Tim", "joe"),
Marks = c(68, 98, 54, 68, 42), stringsAsFactors = FALSE)
print(tenthclass_sectionB)
Výkon:
Príklad č. 3: funkcia rbind ()
Teraz musíme tieto dve triedy zlúčiť do jednej triedy. Použijeme tu funkciu rbind (). Jediným obmedzením pri pridávaní nového riadku je, že musíme vložiť nové riadky v rovnakej štruktúre ako existujúci dátový rámec.
kód:
new_tenthclass = rbind(tenthclass_sectionA, tenthclass_sectionB)
print(new_tenthclass)
Výkon:
2. Pridajte stĺpec
Teraz zvážte prípad, keď musíme pridať podrobnosti o krvných skupinách každého študenta v triede 10. Pridáme k nemu nový stĺpec a pomenujeme ho „Krvná skupina“.
Náš dátový rámec vyzerá takto.
kód:
tenthclass = data.frame(roll_number = c(1:5), Name = c("John", "Sam", "Casey", "Ronald", "Mathew"),
Marks = c(77, 87, 45, 68, 95), stringsAsFactors = FALSE)
print(tenthclass)
Výkon:
kód:
tenthclass$Blood_group = c("O", "AB", "B+", "A+", "AB")
print(tenthclass)
Výkon:
Odstrániť riadok a stĺpec z dátového rámca
Na odstránenie riadka a stĺpca z dátového rámca používame nasledujúcu implementáciu kódu.
1. Vymažte stĺpec
kód:
print(tenthclass)
Výkon:
V tomto dátovom rámci, ak musíme vymazať premennú krvnej skupiny (stĺpec úplne vpravo), odovzdáme nasledujúci kód.
kód:
tenthclass$Blood_group = NULL
print(tenthclass)
Výkon:
Vynechaním príkazu NULL môžeme premennú priamo odstrániť z nášho dátového rámca.
2. Odstráňte riadok
kód:
print(tenthclass)
Výkon:
Teraz zvážte situáciu, keď nepotrebujeme známky Jána, takže musíme odstrániť najvyšší riadok.
kód:
tenthclass = tenthclass(-1, ) print(tenthclass)
Výkon:
Aktualizácia údajov v dátovom rámci
kód:
print(tenthclass)
Výkon:
Predpokladajme, že Sam skóroval 98 bodov, ale podľa našich dátových rámčekov je 87. Takže môžeme tento kód opraviť pomocou kódu nižšie.
kód:
tenthclass$Marks(2) = 98
print(tenthclass)
Výkon:
záver
Dátové rámce sú veľmi bežnou formou vyhlásenia problému. Je to zoznam premennej rovnakého počtu riadkov s jedinečnými ID riadkov. Tento článok nám pomáha vedieť, ako môžeme pridať riadok, pridať stĺpec, odstrániť riadok, odstrániť stĺpec údajového rámca a tiež hovorí, ako môžeme aktualizovať údaje v dátovom rámci.
Odporúčané články
Toto je sprievodca údajovými rámcami v R. Tu diskutujeme o rôznych krokoch na vytvorenie dátových rámcov a o tom, ako extrahovať údaje z dátových rámcov v R. Ďalšie informácie nájdete aj v nasledujúcich článkoch.
- Top 5 typov údajov v R
- Zoznam užitočných R balíkov
- R súbory CSV
- R Programové funkcie - dôležitosť
- Faktor v R s výhodami