Je veux faire quelque chose de vraiment simple. Par souci de simplicité, supposons que j'ai deux groupes, disons avec N = 2 000 dans le groupe 1 et N = 3 000 dans le groupe 2. Je voudrais calculer une moyenne globale d'une variable Y qui est collectée pour chaque groupe. La moyenne de Y dans le groupe 1 est de 4 et dans le groupe 2 de 8. La moyenne globale ici serait la moyenne non pondérée et non la moyenne pondérée - elle devrait être de 6. J'aurais peut-être pensé que je devrais mettre les valeurs suivantes pour "Poids":
Groupe 1 : 5 000/2 000
Groupe 2 : 5 000/3 000
Mais ceux-ci ne donnent pas le nombre attendu. Pouvez-vous m'aider à comprendre l'option "Poids" dans Analyze:JMP et me dire quels poids je dois utiliser pour mon problème ?
Sauf si j'interprète mal votre message, un moyen de trouver la valeur moyenne de chaque groupe consiste à structurer le tableau de données avec deux colonnes, "Groupe" comme variable nominale et "Y" comme variable continue dans la deuxième colonne. Ensuite, une simple plate-forme de distribution est exécutée avec la variable "Groupe" dans la fenêtre Par et la variable "Y" dans la fenêtre Y, colonnes et vous obtiendrez deux histogrammes et des tableaux de statistiques récapitulatifs, un pour chaque valeur dans la colonne "Groupe" . Vous n'avez pas besoin de vous soucier de la fenêtre Poids.
Tout d'abord, le poids n'est pas Freq. Si vous savez ce que fait Freq, alors Weight fait quelque chose de différent, ou de plus.
Je voudrais signaler les deux articles SAS suivants :
Dans mon mot, utilisez Weight uniquement si vous souhaitez modifier l'impact des observations individuelles sur votre analyse. Par exemple, comme dans le deuxième article ci-dessus, on peut vouloir tempérer l'influence des valeurs aberrantes sur l'analyse.
Donc, que vous souhaitiez utiliser le poids ou non, et comment l'utiliser, vous voudrez peut-être vous demander quel impact cela peut avoir sur votre analyse et comment interpréter cet impact.
Dans l'exemple que vous avez donné, et de la manière que vous décrivez, je ne peux qu'imaginer que vous disposez d'une sorte de données récapitulatives, puis que vous souhaitez utiliser Weight pour "corriger" les contributions des statistiques récapitulatives de groupes individuels. Mais je ne suis au courant d'aucune plate-forme JMP conçue pour gérer des données récapitulatives, à l'exception de certains outils sous Aide> Exemple d'index. Si vos données sont dans leur forme originale, vous n'avez pas besoin de poids comme l'a dit mon collègue.
Je pense, je comprends ce que vous voulez, mais pas pourquoi il est nécessaire. Et je suis d'accord avec les réponses ci-dessus, ce poids n'est peut-être pas la bonne façon.
Si vous voulez faire simple, j'utiliserais l'approche en 2 étapes, en calculant d'abord les moyennes du groupe, puis en calculant les moyennes des moyens (en ignorant la fréquence).
Cela signifie donc que vous voulez que chaque groupe soit pondéré de manière égale, et la moyenne est de 6, voir la deuxième capture d'écran.
Mais la norme dans JMP est que chaque ligne a le même poids, comme d'autres l'ont déjà souligné. Et si vous avez vraiment besoin de le faire dans une "table empilée", vous devez calculer les poids de cette manière, que le résultat est ce que vous voulez, mais cela pourrait devenir assez compliqué et déroutant en utilisant plus de groupes - donc je ne recommande pas .
Juste pour illustration, voir le script ci-dessous.


Names Default To Here( 1 );
// generate example table
dt = New Table( "test weight",
add rows( 5000 ),
New Column( "group", formula( If( Row() > 2000, "B", "A" ) ) ),
New Column( "value", formula( If( Row() > 2000, Random Normal( 8, 1 ), Random Normal( 4, 1 ) ) ) ),
New Column( "weight", formula( If( Row() > 2000, 5000 / 6000, 5000 / 4000 ) ) ),
New Column( "mean", formula( Col Mean( :value ) ) ),
New Column( "group mean", formula( Col Mean( :value, :group ) ) )
);
dt << add properties to table(
{new script(
"By Distribution",
Distribution( Stack( 1 ), Continuous Distribution( Column( :value ), Horizontal Layout( 1 ), Vertical( 0 ) ), By( :group ) )
), new script(
"Weighted Distribution",
Distribution( Stack( 1 ), Continuous Distribution( Column( :value ), Horizontal Layout( 1 ), Vertical( 0 ) ), weight( :weight ) )
)}
);
dt_sum = dt << summary( subgroup( :group ), Mean( value ) );
dt_sum << New Column( "all mean", Formula( Mean( :"Mean(value, A)"n, :"Mean(value, B)"n ) ) );