Datan Muuntaminen
Datan muuntaminen on olennainen vaihe raakadatan valmistelussa analyysia varten. Siihen kuuluu muuttujien muokkaaminen, lisääminen tai uudelleenkoodaus, jotta datasta tulee merkityksellisempää ja valmista analysoitavaksi.
Uusien sarakkeiden luominen
Yleinen muunnos on laskea uusia mittareita olemassa olevista sarakkeista. Esimerkiksi saatat haluta laskea hinnan per kilometri arvioidaksesi, kuinka kustannustehokas ajoneuvo on.
Base R
Voit luoda uuden sarakkeen käyttämällä $
-operaattoria määrittääksesi sen nimen ja antamalla sille arvot.
df$price_per_km <- df$selling_price / df$km_driven
head(df)
dplyr
Uusia sarakkeita voidaan lisätä käyttämällä mutate()
-funktiota. mutate()
-funktion sisällä määritellään uuden sarakkeen nimi ja kuinka se lasketaan.
df <- df %>%
mutate(price_per_km = selling_price / km_driven)
Tekstipohjaisten numeeristen tietojen muuntaminen ja käsittely
Todellisissa tietoaineistoissa numeerinen tieto on usein tallennettu tekstinä, johon on yhdistetty ei-numeerisia merkkejä. Esimerkiksi moottorin tehoarvot voivat esiintyä muodossa "68 bhp", jotka täytyy puhdistaa ja muuntaa ennen analysointia.
Base R
Voit käyttää gsub()
-funktiota poistaaksesi ei-toivotut merkit ja sen jälkeen soveltaa as.numeric()
-funktiota muuntaaksesi tuloksen numeeriseksi. Muunnoksen jälkeen voidaan tehdä lisämuunnoksia, kuten jarruvoiman (bhp) muuntaminen kilowateiksi.
df$max_power <- as.numeric(gsub(" bhp", "", df$max_power))
df$max_power_kw <- df$max_power * 0.7457 # convert to kilowatts
dplyr
Sama prosessi voidaan virtaviivaistaa käyttämällä mutate()
-funktiota. Voit yhdistää tekstin korvaamisen, tyyppimuunnoksen ja uuden sarakkeen luomisen yhteen vaiheeseen, mikä tekee koodista selkeämpää ja helpommin luettavaa.
df <- df %>%
mutate(
max_power = as.numeric(gsub(" bhp", "", max_power)),
max_power_kw = max_power * 0.7457
)
Datan kategorisointi
Voit luoda uusia kategorisia muuttujia ryhmittelemällä jatkuvia arvoja merkityksellisiin luokkiin. Esimerkiksi autot voidaan luokitella Low, Medium tai High hintaluokkiin myyntihinnan perusteella.
Base R
Tämä voidaan tehdä sisäkkäisillä ifelse()
-lauseilla. Jokainen ehto tarkistetaan järjestyksessä ja arvo määritetään sen mukaan.
df$price_category <- ifelse(df$selling_price < 300000, "Low",
ifelse(df$selling_price < 700000, "Medium", "High"))
dplyr
Voit käyttää case_when()
-funktiota korvaamaan sisäkkäiset if-else-lauseet. Tämä mahdollistaa useiden ehtojen kirjoittamisen selkeässä ja luettavassa muodossa.
df <- df %>%
mutate(price_category = case_when(
selling_price < 300000 ~ "Low",
selling_price < 700000 ~ "Medium",
TRUE ~ "High"
))
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Can you explain the difference between using Base R and dplyr for data transformation?
How do I handle non-numeric values when converting columns for analysis?
Can you show more examples of categorizing data using different criteria?
Awesome!
Completion rate improved to 4
Datan Muuntaminen
Pyyhkäise näyttääksesi valikon
Datan muuntaminen on olennainen vaihe raakadatan valmistelussa analyysia varten. Siihen kuuluu muuttujien muokkaaminen, lisääminen tai uudelleenkoodaus, jotta datasta tulee merkityksellisempää ja valmista analysoitavaksi.
Uusien sarakkeiden luominen
Yleinen muunnos on laskea uusia mittareita olemassa olevista sarakkeista. Esimerkiksi saatat haluta laskea hinnan per kilometri arvioidaksesi, kuinka kustannustehokas ajoneuvo on.
Base R
Voit luoda uuden sarakkeen käyttämällä $
-operaattoria määrittääksesi sen nimen ja antamalla sille arvot.
df$price_per_km <- df$selling_price / df$km_driven
head(df)
dplyr
Uusia sarakkeita voidaan lisätä käyttämällä mutate()
-funktiota. mutate()
-funktion sisällä määritellään uuden sarakkeen nimi ja kuinka se lasketaan.
df <- df %>%
mutate(price_per_km = selling_price / km_driven)
Tekstipohjaisten numeeristen tietojen muuntaminen ja käsittely
Todellisissa tietoaineistoissa numeerinen tieto on usein tallennettu tekstinä, johon on yhdistetty ei-numeerisia merkkejä. Esimerkiksi moottorin tehoarvot voivat esiintyä muodossa "68 bhp", jotka täytyy puhdistaa ja muuntaa ennen analysointia.
Base R
Voit käyttää gsub()
-funktiota poistaaksesi ei-toivotut merkit ja sen jälkeen soveltaa as.numeric()
-funktiota muuntaaksesi tuloksen numeeriseksi. Muunnoksen jälkeen voidaan tehdä lisämuunnoksia, kuten jarruvoiman (bhp) muuntaminen kilowateiksi.
df$max_power <- as.numeric(gsub(" bhp", "", df$max_power))
df$max_power_kw <- df$max_power * 0.7457 # convert to kilowatts
dplyr
Sama prosessi voidaan virtaviivaistaa käyttämällä mutate()
-funktiota. Voit yhdistää tekstin korvaamisen, tyyppimuunnoksen ja uuden sarakkeen luomisen yhteen vaiheeseen, mikä tekee koodista selkeämpää ja helpommin luettavaa.
df <- df %>%
mutate(
max_power = as.numeric(gsub(" bhp", "", max_power)),
max_power_kw = max_power * 0.7457
)
Datan kategorisointi
Voit luoda uusia kategorisia muuttujia ryhmittelemällä jatkuvia arvoja merkityksellisiin luokkiin. Esimerkiksi autot voidaan luokitella Low, Medium tai High hintaluokkiin myyntihinnan perusteella.
Base R
Tämä voidaan tehdä sisäkkäisillä ifelse()
-lauseilla. Jokainen ehto tarkistetaan järjestyksessä ja arvo määritetään sen mukaan.
df$price_category <- ifelse(df$selling_price < 300000, "Low",
ifelse(df$selling_price < 700000, "Medium", "High"))
dplyr
Voit käyttää case_when()
-funktiota korvaamaan sisäkkäiset if-else-lauseet. Tämä mahdollistaa useiden ehtojen kirjoittamisen selkeässä ja luettavassa muodossa.
df <- df %>%
mutate(price_category = case_when(
selling_price < 300000 ~ "Low",
selling_price < 700000 ~ "Medium",
TRUE ~ "High"
))
Kiitos palautteestasi!