0
je me demandais s'il était possible de faire quelque chose comme ceci en utilisant une boucle:R - Est-il possible d'ajouter à une fonction?
data[data!=1]
data[data!=1&data!=2]
data[data!=1&data!=2&data!=3]
je me demandais s'il était possible de faire quelque chose comme ceci en utilisant une boucle:R - Est-il possible d'ajouter à une fonction?
data[data!=1]
data[data!=1&data!=2]
data[data!=1&data!=2&data!=3]
Bonjour :)
Vous pouvez essayer:
data <- c(1,2,3,2,2,1,4,5,2,1)
indices <- 1:3 # or use function seq for more general sequences
for(i in indices){
print(data[!data %in% min(indices):i])
}
Si vous souhaitez attribuer retour à de nouveaux vecteurs, vous pouvez essayer lapply:
obj_list <- lapply(indices, FUN = function(i){
data[!data %in% min(indices):i]
})
obj_list
Est-ce w chapeau que vous cherchez?
Merci, cela m'a mis sur la bonne voie pour ce que je devais faire. – ThatsNotMyName
Salut, question de suivi rapide, si j'essayais plutôt de créer des sous-chaînes, comment pourrais-je faire cela? Merci – ThatsNotMyName
Avez-vous un exemple? une autre façon de faire ce que j'ai fait est avec la fonction 'subset'. si vous avez des chaînes comme 'string_vec = c (" a "," b "," c ")'. Ensuite, vous pouvez faire 'data [! Data% in% string_vec [min (indices): i]]'. C'est-à-dire, définissez un vecteur numérique de 1 à la longueur de vos chaînes. Faites ensuite la même chose mais faites 'string_vec [num_vec]'. Avoir du sens? –