Supposons que j'ai une simple listeLooping/impression sur une liste R
v <- list(vec1=c(1,2,3), vec2=c(3,4,5, 6))
Je voudrais faire une boucle sur cette liste et exécuter certaines fonctions sur son élément, de sorte que comme une sortie que je reçois à la fois: nom de cet élément particulier et sortie de la fonction. Par exemple:
for (i in v)
{print(sd(i))
}
Dans ce cas, la sortie est:
[1] 1
[1] 1.290994
Mais je voudrais voir quelque chose comme ceci:
$vec1
[1] 1
$vec2
[1] 1.290994
Alors que je peux facilement repérer à qui élément chaque sortie se réfère, si j'ai plusieurs éléments dans ma liste. Je sais qu'il a sth avec la fonction names()
à faire, mais je ne peux pas le faire fonctionner.
'lapply (v, sd)' –
Merci, cela fonctionne très bien! Cependant, y at-il un moyen de le faire avec une sorte de boucle ou de modifier lapply(), car en fait j'ai des exemples plus compliqués? Par exemple, une liste de trames de données, sur laquelle je voudrais exécuter une matrice de corrélation de colonnes particulières? – Yaahtzeck