我正在使用kggle泰坦尼克號數據集,其中列Cabin是類字符。我使用下面顯示的函數來獲取每個客艙的第一個元素。dplyr mutate返回NA wheras sapply不與strsplit
sapply(df$Cabin,function(x) strsplit(x,NULL)[[1]][1])
Cabin deck
NA NA
C85 C
NA NA
C123 C
NA NA
E46 E
但是,當我使用dplyr的mutate實現相同的任務,我只是得到甲板的NAs列。這些是我嘗試mutate的功能,都返回了NAs。
df %>% mutate(deck = ifelse(is.na(Cabin),Cabin, strsplit(Cabin,NULL)[[1]][1]))
和
df %>% mutate(deck = strsplit(Cabin,NULL)[[1]][1])
是不是有什麼毛病發生變異或者我只是做錯了什麼?