Für jeden Gegenstand, eine Beobachtung (oder Zeile) gehalten wird, basierend auf der folgenden:select Beobachtungen basierend auf mehreren Bedingungen
var2=c and var3=B
wenn dann diese Beobachtung halten. Wenn nicht, überprüfen Sie if var2=c and var3=S
und behalten Sie diese Beobachtung. wenn nicht, dann dann prüfen, ob var2=L and var3=B
, schließlich, wenn var2=L and var3=S
überprüfen, wenn nicht 0.
Jede Hilfe würde geschätzt setzen.
Meine Daten sieht wie folgt aus:
id var1 var2 var3
1 100 L S
1 100 L B
1 2 C B
1 2 C S
2 5 C S
2 10 L S
2 NA L B
2 NA C B
Mein gewünschte Ergebnis ist:
id var1 var2 var3
1 2 C B
2 5 C S
Ich verstehe es nicht ... Können Sie bitte die Bedingungen besser erklären? – Sotos
http://stackoverflow.com/help/mcve –
Der erste Codeblock - wo Sie die Zuweisung von Werten zeigen - macht keinen Sinn. Zum Beispiel "var2 = c und var3 = B wenn nicht dann". Was meinst du mit "wenn nicht dann"? Was wird hier getestet? Meinst du "if (var3 ==" B ") {var2 <-" c "}" "und wenn das nicht wahr ist, dann deine nächste Aussage, usw.? –