Uvod u okvire podataka u R
Okvir podataka je 2D (dvodimenzionalna) struktura slična nizu u kojoj su prihvaćene različite vrste podataka poput znakova, numeričkih itd. Okvir podataka je podskup liste koji ima svaku komponentu jednake duljine. U osnovi, okvir podataka je tablica u kojoj svaki stupac sadrži vrijednosti jedne varijable, a svaki redak sadrži po jedan skup vrijednosti iz svakog stupca.
Postoje neke karakteristike okvira podataka.
- Naziv stupca je obavezan
- Nazivi redaka trebaju biti jedinstveni
- Broj stavki u svakom stupcu trebao bi biti isti
Koraci za stvaranje okvira s podacima u R-u
Započnimo s stvaranjem okvira podataka koji je objašnjen u nastavku,
Korak 1: Stvorite podatkovni okvir razreda u školi.
Kodirati:
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)
Kada pokrenemo ovaj kod, dobit ćemo takav podatkovni okvir.
Izlaz:
Ovdje je u našem primjeru okvir podataka vrlo mali, ali u stvarnom životu, dok se bavimo problemom, imamo puno podataka. Dakle, za razumijevanje strukture podataka prenosimo funkciju Str ().
2. korak: U kôd dodamo donji redak.
Kodirati:
Str(tenthclass)
Kada pokrenemo cijeli kod, dobit ćemo izlaz.
Izlaz:
Gornji izlaz znači da imamo 5 promatranja 3 varijable. Zatim objašnjava vrstu podataka svake varijable. Kao u našem primjeru, broj role je cijeli broj, ime je znak, a oznake su numerirane.
Nakon što razumijemo strukturu podataka, tada ćemo proslijediti dolje spomenuti kod kako bismo ih statistički razumjeli.
Korak 3: Sada ćemo koristiti rezime () funkciju
Kodirati:
summary(tenthclass)
Izlaz:
Sažetak pruža bolje razumijevanje naših podataka. Reći će nam da znači, srednja, kvatilna, Max i Min. Ove će nam stvari pomoći da donesemo bolju odluku.
Kako izdvojiti podatke iz okvira podataka u R?
Ovdje ćemo nastaviti gornji slučaj. Pretpostavimo da želimo znati ime učenika u desetom razredu, samo ime. Pa kako ćemo izdvojiti?
Naš okvir podataka izgleda ovako.
roll_number Oznake imena
1 1 Ivan 77
2 2 Sam 87
3 3 Casey 45
4 4 Ronald 68
5 5 Matej 95
Da bismo samo dobili ime kao izlaz, proslijedit ćemo sljedeći kôd.
Kodirati:
onlyname = tenthclass$Name
print(onlyname)
Izlaz:
Ovdje ako probijemo kôd, jednostavno stavljamo znak dolara između imena našeg okvira podataka i imena varijable koju želimo dobiti kao izlaz.
Sad razmislite o situaciji, učitelj želi znati sve o rolu broj 2, kao što je njegovo ime i koliko je postigao.
Ovdje nam je potrebno sve o rolu broj 2, pa ćemo proslijediti dolje navedeni kod.
Kodirati:
result_rollnumber2 = tenthclass(c(2), c(1:3)) print(result_rollnumber2)
Izlaz:
Proširi se u okvirima podataka
Okvir podataka može se povećavati i smanjivati dodavanjem ili brisanjem stupaca i redaka.
1. Dodajte redak
Imamo dva okvira podataka. Jedan podatkovni okvir pripada razredu desetog odjeljka A, a drugi podatkovni okvir pripada razredu desetog odjeljka B. Sada se ti različiti odjeljci spajaju u jednu klasu.
Primjer # 1: Klasa 10 A
Kodirati:
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)
Izlaz:
Primjer # 2: Klasa 10 B
Kodirati:
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)
Izlaz:
Primjer # 3: rbind () funkcija
Sada moramo objediniti obje klase u jedan razred. Ovdje ćemo koristiti funkciju rbind (). Jedino ograničenje u dodavanju novog retka je to što moramo unijeti nove retke u istu strukturu kao i postojeći okvir podataka.
Kodirati:
new_tenthclass = rbind(tenthclass_sectionA, tenthclass_sectionB)
print(new_tenthclass)
Izlaz:
2. Dodajte stupac
Sada razmotrimo slučaj u kojem moramo dodati detalje krvne grupe svakog pojedinog učenika iz 10. razreda, a tome ćemo dodati novi stupac i nazvati ga „Blood_group“.
Naš okvir podataka izgleda ovako.
Kodirati:
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)
Izlaz:
Kodirati:
tenthclass$Blood_group = c("O", "AB", "B+", "A+", "AB")
print(tenthclass)
Izlaz:
Izbrišite redak i stupac iz okvira podataka
Za brisanje redaka i stupaca iz okvira podataka koristimo sljedeću implementaciju koda.
1. Izbriši stupac
Kodirati:
print(tenthclass)
Izlaz:
U ovom okviru podataka, ako moramo izbrisati varijablu krvne grupe (najviši desni stupac), donijet ćemo donji kôd.
Kodirati:
tenthclass$Blood_group = NULL
print(tenthclass)
Izlaz:
Zaobilazeći naredbu NULL možemo izravno ukloniti varijablu iz okvira podataka.
2. Izbriši redak
Kodirati:
print(tenthclass)
Izlaz:
Sad razmislite o situaciji u kojoj nam Johnovi tragovi nisu potrebni, pa moramo ukloniti najviši red.
Kodirati:
tenthclass = tenthclass(-1, ) print(tenthclass)
Izlaz:
Ažurirajte podatke u okviru podataka
Kodirati:
print(tenthclass)
Izlaz:
Pretpostavimo da je Sam postigao 98 bodova, ali prema našim okvirima podataka je 87. Dakle, možemo proslijediti donji kôd da ga ispravimo.
Kodirati:
tenthclass$Marks(2) = 98
print(tenthclass)
Izlaz:
Zaključak
Okviri podataka vrlo su čest oblik izjave problema. To je popis varijable istog broja redaka s jedinstvenim ID-ovima retka. Ovaj nam članak pomaže da znamo kako možemo dodati red, dodati stupac, izbrisati red, izbrisati stupac okvira podataka, a također govori kako možemo ažurirati podatke u okviru podataka.
Preporučeni članci
Ovo je vodič za Okviri podataka u R. Ovdje smo razmotrili različite korake za stvaranje okvira podataka i kako izvući podatke iz okvira podataka u R. Također možete pogledati sljedeće članke da biste saznali više -
- Top 5 vrsta podataka u R
- Popis korisnih R paketa
- R CSV datoteke
- Funkcije programa R - Važnost
- Faktor u R s prednostima