Étude de marché: catégorique: ordre décroissant selon le score moyen ou selon le nombre total de réponsesChère communauté,
J'ai le script suivant avec " Classement par score moyen ( 1 ) "mais n’affecte pas le résultat final. Est-ce que Panel Box a de tels effets ou est-ce que je fais quelque chose de mal?
Apprécier n'importe quelle idée ....

Panel Box(
"Resorts:YASMIN, Report:GSQ, SubReport:Marketing, Author:SaitCopuroglu, " || Long Date( Today() ) || " "
|| Format( Time Of Day( Today() ), "h:m" ),
Data Table( "Veri_SelectionsTest2016RESORTS.jmp" ) << Categorical(
Grouping Option( Each Individually ),
X( :Agency ),
Responses( :Answer Categorical ),
Frequencies( 0 ),
Share Chart( 0 ),
Legend( 0 ),
Mean Score( 1 ),
Std Dev Score( 1 ),
Order by Mean Score( 1 ),
Local Data Filter(
Close Outline( 1 ),
Conditional,
Add Filter(
columns( :Resort, :Year, :Record Date ),
Where( :Resort == "YASMIN" ),
Where( :Year == 2017 ),
Where( :Record Date >= 01May2017 & :Record Date <= Today() ),
Display( :Resort, Size( 123, 21 ), Check Box Display ),
Display( :Year, Size( 110, 40 ), Check Box Display )
)
),
SendToReport(
Dispatch( {}, "Categorical", OutlineBox, {Set Title( "YASMIN RESORT 2017" )} ),
Dispatch( {}, "(Resort = YASMIN) and (Record Date == 22May2017)", TextBox, {Set Wrap( 1200 )} ),
Dispatch(
{},
"Responses( Answer Categorical ) By Agency",
OutlineBox,
{Set Title( "Responses By AGENCY" )}
)
)
)
)
Re: Étude de marché: catégorique: ordre décroissant selon le score moyen ou selon le nombre total de réponsesIl n’est pas nécessaire d’utiliser Excel pour résoudre le problème. Bien que la solution ne soit pas la plus simple, la sortie de la plate-forme catégorique peut être convertie directement en une table de données JMP. Ci-dessous un script "non générique" qui montre comment faire cela. Le script peut être converti en un morceau de code générique, qui fonctionnerait dans la plupart des cas.
Names Default To Here( 1 );
dt = Current Data Table();
rpt = dt << Categorical(
GroupingOption( EachIndividually ),
X( :SECTION, :MARKET, :COUNTRY ),
Responses( :VALUE ),
Frequencies( 0 ),
ShareChart( 0 ),
Legend( 0 ),
MeanScore( 1 ),
OrderByMeanScore( 1 )
);
dtCountry = New Table( "Country" );
// Build the Country Coulumn
CountryString = Report( rpt )["Responses( VALUE ) By COUNTRY"][GridCellBox( 10 )] << get text;
// Buildthe list of Countries
CountryStringList = {};
WordCNT = 3;
While( Trim( Word( WordCNT, CountryString, "\!n" ) ) != "",
Insert Into( CountryStringLIst, Trim( Word( WordCNT, CountryString, "\!n" ) ) );
WordCNT++;,
);
dtCountry << New Column( "Country", character, values( CountryStringList ) );
// Build the Percent Columns
dtCountry << New Column( "Çok iyi", Format( "Percent", 7, 2 ) );
dtCountry << New Column( "İyi", Format( "Percent", 7, 2 ) );
dtCountry << New Column( "Ortalama", Format( "Percent", 7, 2 ) );
dtCountry << New Column( "Zayıf", Format( "Percent", 7, 2 ) );
dtCountry << New Column( "Çok Zayıf", Format( "Percent", 7, 2 ) );
PercentString = Report( rpt )["Responses( VALUE ) By COUNTRY"][GridMultiCellBox( 2 )] << get text;
WordCNT = 1;
While( Trim( Word( WordCNT, PercentString, "\!n" ) ) == "", WordCNT++ );
RowCNT = WordCNT - 1;
While( Trim( Word( WordCNT, PercentString, "\!n" ) ) != "",
TheLine = Trim( Word( WordCNT, PercentString, "\!n" ) );
For( i = 1, i <= 5, i++,
Column( dtCountry, i + 1 )[WordCNT - RowCNT] = Num( Trim( Word( i, Theline, "%" ) ) ) / 100
);
WordCNT++;
);
// Add the Total Responses Column
TotalString = Report( rpt )["Responses( VALUE ) By COUNTRY"][GridCellBox( 2 )] << get text;
TotalStringList = {};
WordCNT = 3;
While( Trim( Word( WordCNT, TotalString, "\!n" ) ) != "",
Insert Into( TotalStringLIst, Num( Trim( Word( WordCNT, TotalString, "\!n" ) ) ) );
WordCNT++;,
);
dtCountry << New Column( "Total Responses", values( TotalStringList ) );
// Add the Mean Column
MeanString = Report( rpt )["Responses( VALUE ) By COUNTRY"][GridCellBox( 4 )] << get text;
MeanStringList = {};
WordCNT = 3;
While( Trim( Word( WordCNT, MeanString, "\!n" ) ) != "",
Insert Into( MeanStringLIst, Num( Trim( Word( WordCNT, MeanString, "\!n" ) ) ) );
WordCNT++;,
);
dtCountry << New Column( "Mean", values( MeanStringList ) );
// Sort the table
dtCountry << Sort( By( :Mean ), Order( Ascending ), Replace Table( 1 ) );

Re: Étude de marché: catégorique: ordre décroissant selon le score moyen ou selon le nombre total de réponsesLe problème est que les résultats sont un rapport de tableau croisé (pas un tableau de données standard). Une solution partielle serait de sauvegarder vos résultats dans Excel, puis de les éditer ici. Par exemple:
NamesDefaultToHere(1);
dt = CurrentDataTable();
rpt = dt << Categorical(
GroupingOption( EachIndividually ),
X( :SECTION, :MARKET, :COUNTRY ), Responses( :VALUE ),
Frequencies(0), ShareChart(0), Legend(0),
MeanScore(1), OrderByMeanScore(1)
);
rpt << SaveExcelFile( "C:\Categorical.jmp",
SeparateRowsForEachCellStatistic(1)
);
Les prochaines étapes sont les suivantes:
- Ouvrez le fichier Excel enregistré
- Supprimer manuellement les colonnes et les lignes Excel inutiles
- Sauvegardez les données dans une ou plusieurs tables de données JMP.
- Utiliser le tri par table JMP
Re: Étude de marché: catégorique: ordre décroissant selon le score moyen ou selon le nombre total de réponsesMerci pour votre réponse.
J'ai joint une table de données simplifiée avec le script "catégorique". La même question pour cette analyse spécifique est, s’il existe une option pour l’arrangement de tableau croissant ou décroissant en fonction du nombre total de réponses et du score moyen
J'ai essayé de "valoriser ordre" la colonne "PAYS" mais chaque fois que les données sont mises à jour, la valeur est également commandée ...
Merci d'avance
Re: Étude de marché: catégorique: ordre décroissant selon le score moyen ou selon le nombre total de réponsesPouvez-vous fournir un exemple de table de données pour ce script?