Dátové rámce v R - Ako extrahovať údaje z dátových rámcov v R?

Obsah:

Anonim

Ú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.

  1. Top 5 typov údajov v R
  2. Zoznam užitočných R balíkov
  3. R súbory CSV
  4. R Programové funkcie - dôležitosť
  5. Faktor v R s výhodami