NAs sind nicht erlaubt in adscriptum Aufgaben

Ich habe ein einfaches Problem, aber ich konnte nicht begreifen, die Logik zu überwinden.

Habe ich numerische Vektoren mit NAs und möchten eine Bedingung-abhängigen Betrieb auf Sie.

Einem einfachen Beispiel ähnlich wie mein problem ist:

x <- c(1,3,5,7,NA,2,4,6)
x[x>=5] <- c(1:8)[x>=5]
x[x<5] <- (c(1:8)*10)[x<5]

Gibt es den Fehler "NAs sind nicht erlaubt in adscriptum assignments", also würde ich gerne wissen, was wäre eine vernünftige Lösung für, dass, gegeben, dass die Ausführung jedes Namensnennung separat funktioniert wie erwartet.

Ich würde gerne haben das erwartete Ergebnis:

[1]  10  20  3  4 NA  60  70  8

Vorzugsweise die zimmerreserviereung, ohne das Sie eine for-Schleife, wie dieser Vorgang ist bereits eine Funktion für null-modelling mit vielen Iterationen, das dauert ja ewig.

Vielen Dank im Voraus,
Leonardo

Das ist sehr interessant. Es scheint, dass Sie können nicht kombiniert zahlen mit NA während die Untergruppen und die Zuordnung nur, wenn Sie mehr als einen Wert auf RS... I. e. x[c(NA, 1)] <- 100 und x[NA] <- 100 beide arbeiten, während x[c(NA, 1)] <- 100:101 oder x[NA] <- 100:101 nicht
Dies ist eine wertvolle Frage, wie wird es zu dieser Fehlermeldung. Aber es ist wichtig zu beachten, dass, selbst wenn Ihr code lief ohne NA-Fehler verursacht, es würde nicht produzieren das erwartete Ergebnis. Zeile 2 des Codes überschreibt die ursprünglichen Werte 5 und 7, die Sie verwendet, um vorherzusagen, das Ergebnis von 3 und 4 oben (anstelle von 30 und 40), und Sie wäre 3 und 4 durch die Zeit, die in Zeile 3 aufgerufen wird, wodurch Sie sich 30 und 40. Versuchen: x[x>=5 & !is.na(x)] <- c(1:8)[x>=5 & !is.na(x)] ; x[x<5 & !is.na(x)] <- (c(1:8)*10)[x<5 & !is.na(x)]

InformationsquelleAutor LeoRJorge | 2014-11-12

Schreibe einen Kommentar