J'ai une liste d'objets que j'ai créés manuellement, comme celui-ci: Je travaille sur un code qui regroupe des objets et les met dans S3. Ensuite, j'ai du code dans EC2 que je souhaite saisir la liste MyObjects et le «le perturber» automatiquement. Dans cet exemple, la liste n'a que deux objets et les noms sont connus, mais comment le codez-moi pour gérer les listes de n'importe quelle longueur et n'importe quel nom? P> #pseudo code
for each thing in myObjects
thing <- myObjects[[thing]]
3 Réponses :
Vous pouvez utiliser Attribuer code>:
Attribuer () ... c'est la pièce que j'étais manquante! Merci à vous et à Richie pour me diriger dans la bonne direction.
SEQ_ALONG (MYObjects) CODE> est un peu plus sûr si
longueur (myObjects) == 0 code>
@hadley: merci! SEQ_ALONG () est une excellente trouvaille. Comme dans les exemples suivants: Bad = pour (i in 1: longueur (null)) Imprimer (i) code>, bon =
pour (i in seq_along (null)) Imprimer (i) < / code>
(Vous pouvez souhaiter modifier Pour développer la réponse de Shane: del> globalenv () code> dans un autre environnement.) P > p>
Très bonne idée des environnements changeants. Je devrais utiliser ça. C'est une idée de bonus!
Dans cet exemple, je vois que les objets Rand1 et Rand2 sont créés, mais il semble également de produire également l'objet MyObjects. Si j'ignore les résultats de ce maplicy () à un objet, je me retrouve avec une copie de MyObjects plus Rand1 et Rand2. Un peu bruyant et semble inefficace. Devrait-il être une saveur différente de s'appliquer?
joindre (myObjects) code> p>
J'avais fondamentalement pris des joints () de mon vocabulaire parce que j'ai constaté que la façon dont la plupart des gens utilisent des résultats dans un code de merde, difficile à suivre. Donc, je n'ai même pas pensé à l'utiliser dans ce cas. Mais maintenant que vous en parlez, je pense que c'est une très bonne solution. Merci de m'aider à penser à l'extérieur de ma petite boîte.
Je ne pense pas que ce soit une bonne idée d'utiliser Joindre. Mais si vous allez l'utiliser, utilisez-le, n'écrivez pas votre propre version de celui-ci.
Voir aussi: avec (myObjects, {...}) code> pour une alternative plus rapide et plus sûre à
joindre code>.
Connexes: Stackoverflow. com / questions / 2590043 / ... , Stackoverflow.com/Questtions/2679193/... , Stackoverflow.com/Questtions/2899581/... , Stackoverflow.com/Questtions/2907896/...
Merci pour les liens Marek. Cela devient une «solution d'angle» de TRES pour la recherche. Une fois que je connais la fonction qui fait ce que je veux, il est tellement plus facile de trouver des questions connexes. Le bit vraiment dur consiste à comprendre comment s'y rendre avec une brève description du problème!