[問題]常見的重複操作as.numeric用apply可否實現

作者: empireisme (empireisme)   2020-02-24 18:40:16
如題
在做資料分析的時候 會常遇到需要 as.factor 或是 as.numeric的操作
比如說我的column總共有26行
第一行叫a 第二行叫b 依此類推
如果我想要把第一到第10行都轉成numeric
我只好笨笨的
df$a<- as.numeric(df$a)
df$b<- as.numeric(df$b)
df$c<- as.numeric(df$c)
像這樣做實在超笨的
有沒有可能利用APPLY或是其他方式
讓我一次性的把指定的行數 給他一個數列 例如 c(1,4,5,6,7,8)
就自動把指定的行數轉成as.numeric 或是as.factor的結果
還是我必須要自己寫一個函數呢QQ
作者: andrew43 (討厭有好心推文後刪文者)   2020-02-24 19:12:00
sapply(df[, c(1,4,5,6,7,8)], as.numeric) 再cbind回df之後若想刪掉舊的就只是 df[, -1*c(1,4,...)]
作者: TreeMan (好啊...)   2020-02-24 19:37:00
直接df[c(1,4,5,6,7,8)] <- sapply(...) 就不用cbind了
作者: andrew43 (討厭有好心推文後刪文者)   2020-02-24 19:50:00
對。謝謝。
作者: empireisme (empireisme)   2020-02-25 01:19:00

Links booklink

Contact Us: admin [ a t ] ucptt.com