Okviri podataka u R - Kako izdvojiti podatke iz okvira podataka u R?

Sadržaj:

Anonim

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 -

  1. Top 5 vrsta podataka u R
  2. Popis korisnih R paketa
  3. R CSV datoteke
  4. Funkcije programa R - Važnost
  5. Faktor u R s prednostima