Ricerca dei consumatori: categoriale: ordine decrescente per punteggio medio o per risposte totaliCara comunità,
Ho il seguente script con " Ordine per punteggio medio ( 1 ) "ma non influisce sul risultato finale. Panel Box ha questi effetti o sto facendo qualcosa di sbagliato?
Apprezzo qualsiasi idea ....

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: Consumer Research: Categorical: ordine decrescente per punteggio medio o per risposte totaliNon è necessario andare in Excel per risolvere il problema. Sebbene la soluzione non sia la più semplice, l'output della piattaforma categoriale può essere convertito direttamente in una tabella di dati JMP. Di seguito è riportato uno script "non generico" che mostra come eseguire questa operazione. Lo script può essere convertito in un pezzo generico di codice, che funzionerebbe nella maggior parte dei casi.
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: Consumer Research: Categorical: ordine decrescente per punteggio medio o per risposte totaliIl problema è che i risultati sono un rapporto a campi incrociati (non una tabella di dati standard). Una soluzione parziale sarebbe quella di salvare i risultati in Excel e quindi modificarli lì. Per esempio:
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)
);
I prossimi passi sono:
- Apri il file Excel salvato
- Elimina manualmente colonne e righe di Excel non necessarie
- Salvare i dati in una o più tabelle di dati JMP
- Usa ordinamento tabella JMP
Re: Consumer Research: Categorical: ordine decrescente per punteggio medio o per risposte totaliGrazie per la tua risposta.
Ho allegato una tabella di dati semplificata con lo script "categorico". La stessa domanda per questa specifica analisi è, se esiste un'opzione per la disposizione della tabella crescente o decrescente in base alle risposte totali e al punteggio medio
Ho provato a "ordinare ordine" la colonna "PAESE" ma ogni volta che i dati vengono aggiornati l'ordine di valore anche ...
Grazie in anticipo
Re: Consumer Research: Categorical: ordine decrescente per punteggio medio o per risposte totaliPuoi fornire una tabella di dati di esempio per questo script?