Ciao,
Ho un progetto e il mio scopo è estrarre dalla mia tabella dati (1) il valore medio, massimo e minimo per ciascuna colonna e scrivere i risultati in una nuova tabella (2).
Ho trovato questa parte del codice e sembra funzionare per poche colonne, ma non per tutte. Ho circa 300 colonne e ho i risultati solo per venti di esse.
For( i = 1, i <= N Col( dt ), i++,
If (:Trial[i] =="TrialName",
If( Column( dt, i ) << get data type == "Numeric",
Write( "\!n", Column( dt, i ) << get name );
Write( Column( dt, i ), "\!nMin: ", Col Min( Column( dt, i ) ) );
Write( "\!nMax: ", Col Max( Column( dt, i ) ) );
Write( "\!nAverage: ", Col Moving Average( Column( dt, i) ) );
Write ("\!n");
)
)
); Posso vedere i risultati nei log ma non riesco a scrivere i risultati nella colonna di destra della mia nuova tabella (2).
Visualizza altro...Questo codice mostra qualcosa del tipo:
Colonna 1
Min: 10
Massimo: 50
Media: 30
Ecco un esempio di ciò che voglio:
Tabella 1: Colonna 1 : Colonna 2 : --> Tabella 2 -----> Colonna 1 : Colonna 2 :
10 45,2 Massimo: 50 Massimo: 52,4
20 48,3 Min: 10 Min: 18,3
30 36,7 Media: 30 Media: 40,18
40 52.4
5018.3
--->
1. Penso che tutti i miei dati non siano considerati numeri, quindi JMP non vuole calcolare il minimo, il massimo e la media, ma non ho trovato un modo per "forzare" il tipo di dati.
2. Non riesco a scrivere i miei risultati nelle colonne della classifica finale (2).
Non chiedo la risposta completa ma solo consigli perché sono davvero bloccato.
Grazie !
Grazie a tutti voi per i consigli! Ci lavorerò durante la prossima settimana.
Ho letto tutto, non sapevo fosse possibile farlo con i preset JMP.
Il mio punto è eseguire uno script per avere il risultato finale per un facile utilizzo da parte di tutti. Penso di poter scrivere il passaggio che mi hai mostrato.
grazie !
Puoi ottenere ciò che desideri utilizzando JMP in modo interattivo. Illustrerò con Fitness dalla cartella Sample Data. Si supponga che la tabella dei dati sia aperta.
Passaggio 1: calcola le statistiche
- Avvia il Distribuzione piattaforma con tutte le colonne di dati di interesse ( Età attraverso MaxPulse ).
- Fare clic con il tasto destro sul Statistiche riassuntive tabella e selezionare Crea una tabella di dati combinati .
Passaggio 2: riorganizza i risultati nel modo desiderato.
- Selezionare Tabelle > Dividi . Selezionare Y colonna e fare clic Dividi per . Selezionare Colonna 2 e seleziona Colonna divisa . Selezionare Tieni tutto . Clic OK .




Intendo solo per illustrare un processo rapido e interattivo. Può essere catturato in uno script come @txnelson suggerito. Può essere personalizzato in ogni fase secondo necessità.
Il progetto che hai descritto può essere generato in JMP utilizzando una delle piattaforme JMP integrate.E una volta che la piattaforma viene eseguita in modo interattivo, il JSL per eseguirla può essere ottenuto direttamente da JMP.Ti suggerisco di prendere una strada diversa per la tua soluzione.
Di seguito sono riportate la tabella dei dati iniziale e la tabella dei dati risultante dopo aver eseguito la piattaforma.


Per scrivere su un'altra tabella potresti usare alcuni di questi Add Rows() o New Column(). Write() stamperà semplicemente i valori nel log di JMP. Poi c'è anche Abbonamento tabella dati , potresti usare Tabulate() o Summary() per calcolare le statistiche (forse anche Distribution in combinazione con make into datatable).
Per "forzare" i valori in modo che siano numerici (fai attenzione con questo, poiché ciò può e comporterà una perdita di dati) potresti provare a utilizzare << Imposta tipo di dati ("Numerico")
Per ulteriori informazioni sulle funzioni, vedere l'indice di scripting nel menu Help di JMP