2016-10-05 4 views
-1

Ich versuche, eine for-Schleife auszuführen.Noch einige Werte geben NA zurück. Ich möchte die FOR-Schleife nur für die Werte ausführen, die Ergebnisse NA und nicht für alle Werte.unten haben ist das, was ich gerade benutze. Damit wird die for-Schleife für alle Werte ausgeführt.Re-Schleife für Schleife in R

while(df[2] == NA){ 

for(i in 1:nrow(df)){ 

#do something 

}} 

df wird der Datenrahmen erste Spalte von df einige Werte und zweite Spalte speichert das Ergebnis des entsprechenden Wertes hat.

+1

Wenn es "NA" und keine Zeichenfolge '" NA "' ist, dann benutze 'is.na()' -Funktion. Außerdem, wenn Sie mehr '#do etwas'-Bit Ihres Codes erklären, wird es vielleicht keine' Forloop' und 'While' geben. – zx8754

Antwort

2
while(sum(is.na(df[2])>0){ 

for(i in which(is.na(df[2])){ 

#do something 

}}