NAs ne sont pas autorisés à souscrire à l'utilisation des affectations
J'ai une question simple, mais je n'arrivais pas à saisir la logique de la surmonter.
J'ai numériques vecteurs avec NAs et souhaitez appliquer une condition dépendant de l'opération.
Un exemple simple de similaire à mon problème est le suivant:
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]
Elle renvoie l'erreur "NAs ne sont pas autorisés dans indicée missions", donc je voudrais savoir ce qui serait une solution sensée pour que, étant donné que l'exécution de chaque attribution séparément fonctionne comme prévu.
Je voudrais avoir le résultat attendu:
[1] 10 20 3 4 NA 60 70 8
De préférence sans avoir à faire une boucle for, comme cette opération est déjà en fonction pour les nuls la modélisation avec beaucoup d'itérations qui prend les âges.
Vous en remercie d'avance,
Leonardo
NA
tout. et en attribuant uniquement si vous avez plus d'un valeur de l'ERS... I. e. x[c(NA, 1)] <- 100
et x[NA] <- 100
à la fois travailler, tandis que x[c(NA, 1)] <- 100:101
ou x[NA] <- 100:101
neC'est une précieuse question qu'il obtient à ce message d'erreur. Mais il est important de noter que même si votre code a fonctionné sans le NA-a causé des erreurs, il ne serait pas produire le résultat escompté. La ligne 2 de votre code serait de remplacer les valeurs d'origine de 5 et 7 que vous avez utilisé pour prédire le résultat de 3 et 4 ci-dessus (au lieu de 30 et 40), et ils seraient 3 et 4 de la ligne de temps 3 est appelé, à l'origine à devenir 30 et 40. Essayez:
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)]
OriginalL'auteur LeoRJorge | 2014-11-12
Vous devez vous connecter pour publier un commentaire.
Votre logique, il faut aussi exclure les NAs dans le sous-ensemble. Voir l'exemple suivant. Note de la sous-ensembles de vecteurs sont stockés à l'abri avant de
x
est modifié.OriginalL'auteur
Je pense que vous êtes le brassage de cession et de subscripting. Je crois que ce que vous êtes après est quelque chose de plus près à ceci:
OriginalL'auteur
OriginalL'auteur