2
私は次の問題があります。私はCSVからデータをインポートします。インポートされたCSVファイルは、Kは私がKとMのサブセット内の値で乗算するリストを使用するようdplyrに新しい列を作成したいと思います1 000及びM 1 000 000を示し、このリストでサブセット化し、 "NA"値を認識しない
df <- data.frame(x=c(1,2,3,4,5), y=c("K","M",NA,NA,"K"))
のように見えます
df %>% mutate(result=x * sul[y])
私の問題は、それがCSVからデータをインポートした結果がsul[y]
で認識されていないと私はNAのいずれかを取得していること、しかしです:だからdplyrを使用して、X列
sul <- c("K"=1000, "M"=1000000, "NA"=1)
またはNULLです。どのようにこの問題をエレガントな方法で解決するか考えていますか?その後、実行中のより良い方法はあります:
df$y[is.na(df&y)]<-1
どうもありがとう!
P.S. forループの代わりにリストによるサブセットが選択され、データの処理速度が向上します。
おかげで、へ
replace
、OPのポストから「スル」を使用している場合は! –