R'deki data.table'a koşullu olasılıklar ekleme
3 koşula dayalı olarak hayatta kalma olasılığını bulmak istediğim titanik veri setine sahibim. Aşağıdaki tablo olasılıkları vermektedir.
library(PASWR2)
tab = with(TITANIC3, ftable(fare = fare > 200, pclass, sex, survived)) %>% prop.table(1) %>% round(3) * 100
tab
tabTablodan TITANIC3 veri kümesine olasılıkları yeni bir sütun olarak eklemenin kolay bir yolu var mı ?
Teşekkürler!
Yanıtlar
Bu, paket kullanılarak sağlanabilir data.table. Nesne TITANIC3sınıftır data.frame. İlk önce onu sınıfa dönüştürmen gerekiyor data.table. Data.table'ı kullanırken, toplamaları ve bir gruplama cümlesini doğrudan tek satırda temel alan yeni sütunlar tanımlayabilirsiniz. Aşağıdaki kodu çalıştırmanız yeterlidir.
Koşullu hayatta kalma olasılığına sahip yeni sütun survival_prob. data.tableR'de veriyi değiştirmenin en hızlı yolu olduğu için her zaman kullanmanızı öneririm . Bununla birlikte, analizinize a ile devam etmek istiyorsanız , nesneyi tekrar sınıfa dönüştürmek için data.framekomutu setDF(titanic3)kullanın data.frame.
library(PASWR2)
library(magrittr)
library(data.table)
# convert dataset from data frame to data table
titanic3 <- copy(TITANIC3)
setDT(titanic3)
# define new column survival_prob using by-option
titanic3[, survival_prob := round(100*mean(survived), 1),
by = .(fare > 200, pclass, sex)]