Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Oppiskele Rivien Käsittely | Data Frame -tietorakenteet
R:n Perusteet

bookRivien Käsittely

Aivan kuten sarakkeita, myös tietokehyksen rivejä voidaan lisätä tai poistaa.

Yksittäisten rivien lisääminen

Yksittäinen rivi voidaan lisätä määrittämällä uusi arvo seuraavaan vapaaseen rivin indeksiin (nrow(data) + 1). Koska tietokehys voi sisältää eri tyyppisiä arvoja, uusi rivi on annettava listana (tai data framena).

Note
Huomio

Oletuksena tekstiarvot voidaan muuntaa faktoreiksi tietokehystä luotaessa. Tämä voi aiheuttaa ongelmia uusia rivejä lisättäessä. Tämän välttämiseksi aseta stringsAsFactors = FALSE tietokehystä luodessa.

Esimerkki

123456789
name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # Add a new row test[nrow(test) + 1, ] <- list('Angela', 35, 'F', 'Accountant') test
copy

Useiden rivien lisääminen

Toinen tapa lisätä rivejä on yhdistää kaksi data framea, joilla on samat sarakkeet, käyttämällä merge()-funktiota. Näin voidaan lisätä useita rivejä kerralla.

Esimerkki

123456789101112
name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # New row as data a frame new_person <- data.frame('Angela', 35, 'F', 'Accountant') colnames(new_person) <- colnames(test) # Merge merge(test, new_person, all = T)
copy

Rivien poistaminen

Rivien poistamiseen käytetään negatiivisia indeksejä hakasulkeissa, kuten matriiseissa.

Esimerkki

12345678
name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # Remove a row test[-1, ]
copy
Tehtävä

Swipe to start coding

Sinulla on data frame store, joka sisältää tietoja tuotteista, niiden hinnoista ja myydyistä määristä pienessä huonekaluliikkeessä.

Tehtävänäsi on:

  1. Poistaa rivin 'Dining chair' (indeksi 4) store-data framesta. Tallenna tulos takaisin store-muuttujaan.
  2. Lisätä uusi rivi data frameen store käyttäen list-menetelmää seuraavilla tiedoilla:
ItemPriceSold
Kitchen cabinet7067
  1. Tulostaa muokattu data frame.

Ratkaisu

Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 6
single

single

Kysy tekoälyä

expand

Kysy tekoälyä

ChatGPT

Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme

close

Awesome!

Completion rate improved to 2.27

bookRivien Käsittely

Pyyhkäise näyttääksesi valikon

Aivan kuten sarakkeita, myös tietokehyksen rivejä voidaan lisätä tai poistaa.

Yksittäisten rivien lisääminen

Yksittäinen rivi voidaan lisätä määrittämällä uusi arvo seuraavaan vapaaseen rivin indeksiin (nrow(data) + 1). Koska tietokehys voi sisältää eri tyyppisiä arvoja, uusi rivi on annettava listana (tai data framena).

Note
Huomio

Oletuksena tekstiarvot voidaan muuntaa faktoreiksi tietokehystä luotaessa. Tämä voi aiheuttaa ongelmia uusia rivejä lisättäessä. Tämän välttämiseksi aseta stringsAsFactors = FALSE tietokehystä luodessa.

Esimerkki

123456789
name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # Add a new row test[nrow(test) + 1, ] <- list('Angela', 35, 'F', 'Accountant') test
copy

Useiden rivien lisääminen

Toinen tapa lisätä rivejä on yhdistää kaksi data framea, joilla on samat sarakkeet, käyttämällä merge()-funktiota. Näin voidaan lisätä useita rivejä kerralla.

Esimerkki

123456789101112
name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # New row as data a frame new_person <- data.frame('Angela', 35, 'F', 'Accountant') colnames(new_person) <- colnames(test) # Merge merge(test, new_person, all = T)
copy

Rivien poistaminen

Rivien poistamiseen käytetään negatiivisia indeksejä hakasulkeissa, kuten matriiseissa.

Esimerkki

12345678
name <- c("Alex", "Julia", "Finn") age <- c(24, 43, 32) gender <- c("M", "F", "M") job <- c('Teacher', 'Doctor', 'Manager') test <- data.frame(name, age, gender, job, stringsAsFactors = FALSE) # Remove a row test[-1, ]
copy
Tehtävä

Swipe to start coding

Sinulla on data frame store, joka sisältää tietoja tuotteista, niiden hinnoista ja myydyistä määristä pienessä huonekaluliikkeessä.

Tehtävänäsi on:

  1. Poistaa rivin 'Dining chair' (indeksi 4) store-data framesta. Tallenna tulos takaisin store-muuttujaan.
  2. Lisätä uusi rivi data frameen store käyttäen list-menetelmää seuraavilla tiedoilla:
ItemPriceSold
Kitchen cabinet7067
  1. Tulostaa muokattu data frame.

Ratkaisu

Switch to desktopVaihda työpöytään todellista harjoitusta vartenJatka siitä, missä olet käyttämällä jotakin alla olevista vaihtoehdoista
Oliko kaikki selvää?

Miten voimme parantaa sitä?

Kiitos palautteestasi!

Osio 5. Luku 6
single

single

some-alt