<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ciao,
Ho un set di dati che elenca i widget in una colonna e una lunga stringa di codici difetto in un'altra colonna. Esiste una piattaforma in JMP adatta per trovare modelli di personaggi? Ad esempio, assumendo i codici difetto AZ, che possono apparire in qualsiasi quantità per riga, i codici {A, E, F} appaiono spesso insieme? O forse a volte i codici {H, L, P, X} appaiono spesso insieme? Sto usando JMP10. Grazie!
Tabella di esempio
nt = New Table( "Defect Codes",
Add Rows( 3 ),
New Column( "Widget ID",
Numeric,
Continuous,
Format( "Best", 12 ),
Set Values( [1, 2, 3] )
),
New Column( "Defect Codes",
Character,
Nominal,
Set Values( {"K,V,Q,D", "A,P", "N,D,H"} )
)
);
Sono d'accordo con Michael che questo è un problema interessante. Un'idea è di espandere i codici di errore su più colonne (diciamo le colonne dalla A alla Z) ed eseguire un modello di dati mancante (menu delle tabelle). Il modello può essere utile per illustrare le associazioni tra i codici difetto, ma un ulteriore passaggio potrebbe essere l'applicazione di Multivariata () sul modello mancante. O anche un po 'di sapore della piattaforma categoriale.
Un esempio jsl:
// elenco di tutti i codici difetto
def_code_list = { "UN" , "B" , "C" , "D" , "E" , "F" , "G" , "H" , "IO" , "J" , "K" , "L" , "M" , "N" , "O" ,
"P" , "Q" , "R" , "S" , "T" , "U" , "V" , "W" , "X" , "Y" , "Z" } ;
n = N articoli ( def_code_list ) ;
// -----------------------
// Tabella di esempio
nt = Nuova tabella ( "Codici difetto" ,
Aggiungi righe ( 200 ) ,
Nuova colonna ( "ID widget" , Numerico , Continuo ) ,
Nuova colonna ( "Codici difetto" , Personaggio , Nominale , )
) ;
Colonna ( 1 ) << Imposta valori ( Indice ( 1 , N Row ( nt ) ) ) ;
// Aggiungi codici effetto casuale
Per ogni riga (
: Codici di difetto = Sostituto (
carbonizzare ( def_code_list [ Indice casuale ( n , Il giro ( Esclusione casuale () + 2 , 0 ) )] ) ,
"{" , "" ,
"}" , "" ,
"\!"" , ""
)
) ;
// contaminare con alcune combinazioni comuni
: Codici difetto [ Indice casuale ( 200 , 10 )] = "A, B, C" ;
: Codici difetto [ Indice casuale ( 200 , 20 )] = "M, N, O" ;
// Espandi su più colonne (e crea l'elenco delle colonne)
collist = {} ;
Per ( io = 1 , io <= n , io ++,
col = nt << Nuova colonna ( def_code_list [ io ] , personaggio , nominale ) ;
Inserire ( collist , col ) ;
) ;
Per ogni riga (
ID_codelist = Parole ( : Codici di difetto [] , "," ) ;
Per ( io = 1 , io <= N articoli ( ID_codelist ) , io ++,
Colonna ( nt , Loc ( def_code_list , ID_codelist [ io ] ) [ 1 ] + 2 ) [] = ID_codelist [ io ]
) ;
) ;
// ------------------------
// Analizzare i dati
// Pattern dati mancanti
MDP = nt << modello di dati mancante ( colonne ( Eval ( collist ) ) ) ;
// Multivariato su modello mancante
MDP << multivariata ( colonne ( Eval ( collist ) ) , freq ( : Contare ) ) ;
Robot,
Questo è un problema interessante e forse complesso. Non so di una piattaforma pronta per questo, dipende. Credo che dovrai costruire una soluzione di scripting (JSL).
La domanda operativa è che cos'è un modello? È una stringa qualsiasi di lunghezza arbitraria dalla stringa lunga? Quindi per:
A, B, C, D, E, F, G, H
i modelli potrebbero essere:
UN,
B,
A, B
A, B, C
AVANTI CRISTO
A, B, C, D
... eccetera.
In quanto sopra, potrebbe essere un problema di calcolo molto grande.
Oppure: i modelli sono discreti, blocchi ben definiti che possono essere separati. In questo caso, separali in un'unica colonna impilata e utilizza la piattaforma di distribuzione.
Michael Haslam