Bonjour,
j'ai cette table ( juste un extrait)
NOMVAR FLUX pond FC_12365 220782663 1 FC_5698 344521891 1 FC_12658 222356 1.07
je veux calculer la somme des flux pondérée par les poids ( et par nomvar...)
Merci d'avance
Bonjour,
j'ai cette table ( juste un extrait)
NOMVAR FLUX pond FC_12365 220782663 1 FC_5698 344521891 1 FC_12658 222356 1.07
je veux calculer la somme des flux pondérée par les poids ( et par nomvar...)
Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part tapply(flux*pond,nomvar,sum)
Bonjour,
Merci beaucoup pour la réponse, ça marche!!
Par contre pour les avoir en forme de tableau ( deux colonnes), j'ai dû transposer à deux fois le resultat du genre:
Ce qui m'amène à un autre problème (dsl), après avoir fait la transposée, j'ai obtenu les deux colonnes souhaitées (Nomvar et Flux pondéré).
Code : Sélectionner tout - Visualiser dans une fenêtre à part resultat=t(t(resultat))
Sauf que les valeurs des observations de Nomvar sont mises dans la colonne row.names et que les valeurs des observations de Flux pondérés sont appelées COL.1 comme suit:
row.names col.1 FC_12365 177569 FC_23659 2036584
Or moi, je veux renommer row.names en Nomvar et col.1 en Flux_pondéré
comme suit:
Nomvar flux_pond FC_12365 177569 FC_23659 2036584
Pour les flux pondérés j'ai trouvé la solution comme suit:
Mais pour le row.name impossible d'appliquer cette fonction
Code : Sélectionner tout - Visualiser dans une fenêtre à part colnames(resultat)[1]<- "flux_pond"
Y a t-il une solution??
Merci beaucoup pour l'aide!!
Regarde les aides sur les fonctions suivantes qui te permettront de faire le tableau que tu veux.
?tapply
?data.frame
En particulier le type de valeur que retourne la fonction tapply pour bien comprendre le type d'objet sur lequel tu travailles.
Le transpose est inutile.
ps: ca ne sert à rien de re-creer un sujet pour ca.
Partager