これは簡単な質問ですが、問題なく動作するようになっています。リストの自動検索で新しい計算された変数を生成
私はid変数(一意の行)とバイナリ(0,1)の結果を持つ一連の列を持つデータフレームを持っています。
# ID Var1 Var2 Var3 Var4 Var5
# 1 0 0 0 1 0
# 2 1 0 0 0 0
# 3 0 1 0 0 0
私はVAR1場合= 1新しい変数のClass1を生成したい
ClassList = list(Class1 = c("Var1", "Var2"), Class2 = c("Var3", "Var4","Var5")
を変数 "クラス" のリストを持っています| Var2 = 1、そうでない場合は0。
私はあまりエレガントな手段を用いてこれを行うことができますが、より自動化された機能/ループを作りたい/それは、ClassVarを作成ClassListがを検索します適用し、以下の生成に適切に再コード:
# ID Var1 Var2 Var3 Var4 Var5 Class1 Class2
# 1 0 0 0 1 0 0 1
# 2 1 0 0 0 0 1 0
# 3 0 1 0 0 0 1 0
ありますVarとClasseの多くが統合され、if_elseで無理矢理力を発揮することは効率的ではありません。助言がありますか?
私はこれまでなかった部分はクラス変数を生成することである:ここ
for (I in 1:length(ClassList)) {
classname <- names(ClassList)[I]
df[,paste0(classname)] <- NA
}
これは完全に機能しました。ありがとうございます! – KevinM