Limitare il numero di fattori per esecuzione in un progetto DOECIAO,
Sto esaminando 16 fattori categoriali (16 geni diversi che sto attivando), ma la quantità totale di DNA che posso fornire è limitata, quindi più geni cerco di attivare, più debole è l'attivazione. Qualsiasi numero superiore a 8 geni per esecuzione sarà difficile da interpretare a causa di questo effetto diluitivo. C'è un modo per limitare il numero di fattori in una qualsiasi esecuzione a 8 target, ma ottenere comunque informazioni sugli effetti principali e alcuni 2FI di tutti i 16?
Grazie!
casp
Progettazione degli esperimentiRe: Limitare il numero di fattori per esecuzione in un progetto DOEPer questo esperimento devi usare Custom Design. In particolare, devi specificare un vincolo di fattore. Ho usato nomi di fattore generici da X1 a X16 e livelli di fattore generici L! e L2. Presumo che L1 sia un gene inattivo e L2 sia un gene attivato.
JMP rappresenta false come 0 e true come 1. Verifico se i fattori sono impostati su L2 (attivati). In tal caso, il confronto restituisce 1. Somma i risultati dei confronti e non ammetto alcuna esecuzione maggiore di 8.
Ecco i confronti utilizzati nello script per i vincoli non consentiti.
Sum(
X1 == 2,
X2 == 2,
X3 == 2,
X4 == 2,
X5 == 2,
X7 == 2,
X8 == 2,
X9 == 2,
X10 == 2,
X11 == 2,
X12 == 2,
X13 == 2,
X14 == 2,
X15 == 2,
X16 == 2
) > 8
Ecco lo script per avviare la piattaforma Custom Design e realizzare il tuo design:
DOE(
Custom Design,
{Add Response( Maximize, "Y", ., ., . ),
Add Factor( Categorical, {"L1", "L2"}, "X1", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X2", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X3", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X4", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X5", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X6", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X7", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X8", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X9", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X10", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X11", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X12", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X13", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X14", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X15", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X16", 0 ), Set Random Seed( 5869303 ),
Number of Starts( 1637 ), Add Term( {1, 0} ), Add Term( {1, 1} ),
Add Term( {2, 1} ), Add Term( {3, 1} ), Add Term( {4, 1} ), Add Term( {5, 1} ),
Add Term( {6, 1} ), Add Term( {7, 1} ), Add Term( {8, 1} ), Add Term( {9, 1} ),
Add Term( {10, 1} ), Add Term( {11, 1} ), Add Term( {12, 1} ),
Add Term( {13, 1} ), Add Term( {14, 1} ), Add Term( {15, 1} ),
Add Term( {16, 1} ), Add Alias Term( {1, 1}, {2, 1} ),
Add Alias Term( {1, 1}, {3, 1} ), Add Alias Term( {1, 1}, {4, 1} ),
Add Alias Term( {1, 1}, {5, 1} ), Add Alias Term( {1, 1}, {6, 1} ),
Add Alias Term( {1, 1}, {7, 1} ), Add Alias Term( {1, 1}, {8, 1} ),
Add Alias Term( {1, 1}, {9, 1} ), Add Alias Term( {1, 1}, {10, 1} ),
Add Alias Term( {1, 1}, {11, 1} ), Add Alias Term( {1, 1}, {12, 1} ),
Add Alias Term( {1, 1}, {13, 1} ), Add Alias Term( {1, 1}, {14, 1} ),
Add Alias Term( {1, 1}, {15, 1} ), Add Alias Term( {1, 1}, {16, 1} ),
Add Alias Term( {2, 1}, {3, 1} ), Add Alias Term( {2, 1}, {4, 1} ),
Add Alias Term( {2, 1}, {5, 1} ), Add Alias Term( {2, 1}, {6, 1} ),
Add Alias Term( {2, 1}, {7, 1} ), Add Alias Term( {2, 1}, {8, 1} ),
Add Alias Term( {2, 1}, {9, 1} ), Add Alias Term( {2, 1}, {10, 1} ),
Add Alias Term( {2, 1}, {11, 1} ), Add Alias Term( {2, 1}, {12, 1} ),
Add Alias Term( {2, 1}, {13, 1} ), Add Alias Term( {2, 1}, {14, 1} ),
Add Alias Term( {2, 1}, {15, 1} ), Add Alias Term( {2, 1}, {16, 1} ),
Add Alias Term( {3, 1}, {4, 1} ), Add Alias Term( {3, 1}, {5, 1} ),
Add Alias Term( {3, 1}, {6, 1} ), Add Alias Term( {3, 1}, {7, 1} ),
Add Alias Term( {3, 1}, {8, 1} ), Add Alias Term( {3, 1}, {9, 1} ),
Add Alias Term( {3, 1}, {10, 1} ), Add Alias Term( {3, 1}, {11, 1} ),
Add Alias Term( {3, 1}, {12, 1} ), Add Alias Term( {3, 1}, {13, 1} ),
Add Alias Term( {3, 1}, {14, 1} ), Add Alias Term( {3, 1}, {15, 1} ),
Add Alias Term( {3, 1}, {16, 1} ), Add Alias Term( {4, 1}, {5, 1} ),
Add Alias Term( {4, 1}, {6, 1} ), Add Alias Term( {4, 1}, {7, 1} ),
Add Alias Term( {4, 1}, {8, 1} ), Add Alias Term( {4, 1}, {9, 1} ),
Add Alias Term( {4, 1}, {10, 1} ), Add Alias Term( {4, 1}, {11, 1} ),
Add Alias Term( {4, 1}, {12, 1} ), Add Alias Term( {4, 1}, {13, 1} ),
Add Alias Term( {4, 1}, {14, 1} ), Add Alias Term( {4, 1}, {15, 1} ),
Add Alias Term( {4, 1}, {16, 1} ), Add Alias Term( {5, 1}, {6, 1} ),
Add Alias Term( {5, 1}, {7, 1} ), Add Alias Term( {5, 1}, {8, 1} ),
Add Alias Term( {5, 1}, {9, 1} ), Add Alias Term( {5, 1}, {10, 1} ),
Add Alias Term( {5, 1}, {11, 1} ), Add Alias Term( {5, 1}, {12, 1} ),
Add Alias Term( {5, 1}, {13, 1} ), Add Alias Term( {5, 1}, {14, 1} ),
Add Alias Term( {5, 1}, {15, 1} ), Add Alias Term( {5, 1}, {16, 1} ),
Add Alias Term( {6, 1}, {7, 1} ), Add Alias Term( {6, 1}, {8, 1} ),
Add Alias Term( {6, 1}, {9, 1} ), Add Alias Term( {6, 1}, {10, 1} ),
Add Alias Term( {6, 1}, {11, 1} ), Add Alias Term( {6, 1}, {12, 1} ),
Add Alias Term( {6, 1}, {13, 1} ), Add Alias Term( {6, 1}, {14, 1} ),
Add Alias Term( {6, 1}, {15, 1} ), Add Alias Term( {6, 1}, {16, 1} ),
Add Alias Term( {7, 1}, {8, 1} ), Add Alias Term( {7, 1}, {9, 1} ),
Add Alias Term( {7, 1}, {10, 1} ), Add Alias Term( {7, 1}, {11, 1} ),
Add Alias Term( {7, 1}, {12, 1} ), Add Alias Term( {7, 1}, {13, 1} ),
Add Alias Term( {7, 1}, {14, 1} ), Add Alias Term( {7, 1}, {15, 1} ),
Add Alias Term( {7, 1}, {16, 1} ), Add Alias Term( {8, 1}, {9, 1} ),
Add Alias Term( {8, 1}, {10, 1} ), Add Alias Term( {8, 1}, {11, 1} ),
Add Alias Term( {8, 1}, {12, 1} ), Add Alias Term( {8, 1}, {13, 1} ),
Add Alias Term( {8, 1}, {14, 1} ), Add Alias Term( {8, 1}, {15, 1} ),
Add Alias Term( {8, 1}, {16, 1} ), Add Alias Term( {9, 1}, {10, 1} ),
Add Alias Term( {9, 1}, {11, 1} ), Add Alias Term( {9, 1}, {12, 1} ),
Add Alias Term( {9, 1}, {13, 1} ), Add Alias Term( {9, 1}, {14, 1} ),
Add Alias Term( {9, 1}, {15, 1} ), Add Alias Term( {9, 1}, {16, 1} ),
Add Alias Term( {10, 1}, {11, 1} ), Add Alias Term( {10, 1}, {12, 1} ),
Add Alias Term( {10, 1}, {13, 1} ), Add Alias Term( {10, 1}, {14, 1} ),
Add Alias Term( {10, 1}, {15, 1} ), Add Alias Term( {10, 1}, {16, 1} ),
Add Alias Term( {11, 1}, {12, 1} ), Add Alias Term( {11, 1}, {13, 1} ),
Add Alias Term( {11, 1}, {14, 1} ), Add Alias Term( {11, 1}, {15, 1} ),
Add Alias Term( {11, 1}, {16, 1} ), Add Alias Term( {12, 1}, {13, 1} ),
Add Alias Term( {12, 1}, {14, 1} ), Add Alias Term( {12, 1}, {15, 1} ),
Add Alias Term( {12, 1}, {16, 1} ), Add Alias Term( {13, 1}, {14, 1} ),
Add Alias Term( {13, 1}, {15, 1} ), Add Alias Term( {13, 1}, {16, 1} ),
Add Alias Term( {14, 1}, {15, 1} ), Add Alias Term( {14, 1}, {16, 1} ),
Add Alias Term( {15, 1}, {16, 1} ), Set Sample Size( 24 ),
Disallowed Combinations(
Sum(
X1 == 2,
X2 == 2,
X3 == 2,
X4 == 2,
X5 == 2,
X7 == 2,
X8 == 2,
X9 == 2,
X10 == 2,
X11 == 2,
X12 == 2,
X13 == 2,
X14 == 2,
X15 == 2,
X16 == 2
) > 8
), Simulate Responses( 0 ), Save X Matrix( 0 ), Make Design}
);
Ho progettato l'esperimento per stimare e testare solo gli effetti principali per la prova di principio. Se questo approccio è soddisfacente, puoi modificare i termini del modello per adattarli al tuo scopo.
Re: Limitare il numero di fattori per esecuzione in un progetto DOEGrazie per la risposta, quanto sopra è super utile. Quando genero un design da quanto sopra ottengo serie di 7, 8 e 9 fattori per serie, il che mi confonde un po'. Qualsiasi spunto sul perché ciò accade o su come posso porvi rimedio sarebbe molto apprezzato.
Inoltre, esiste un modo per bloccarlo a 8 fattori anziché <8? Ho provato a cambiare < in = nello script per i vincoli non consentiti, ma ciò ha invalidato lo script...
Grazie!
Re: Limitare il numero di fattori per esecuzione in un progetto DOEHo provato ad aggiungere un'altra clausola (anche la somma dei geni attivi doveva essere inferiore a 8), ma il risultato è stato peggiore! Ecco lo script aggiornato:
DOE(
Custom Design,
{Add Response( Maximize, "Y", ., ., . ),
Add Factor( Categorical, {"L1", "L2"}, "X1", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X2", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X3", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X4", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X5", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X6", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X7", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X8", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X9", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X10", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X11", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X12", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X13", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X14", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X15", 0 ),
Add Factor( Categorical, {"L1", "L2"}, "X16", 0 ), Set Random Seed( 5869303 ),
Number of Starts( 1637 ), Add Term( {1, 0} ), Add Term( {1, 1} ),
Add Term( {2, 1} ), Add Term( {3, 1} ), Add Term( {4, 1} ), Add Term( {5, 1} ),
Add Term( {6, 1} ), Add Term( {7, 1} ), Add Term( {8, 1} ), Add Term( {9, 1} ),
Add Term( {10, 1} ), Add Term( {11, 1} ), Add Term( {12, 1} ),
Add Term( {13, 1} ), Add Term( {14, 1} ), Add Term( {15, 1} ),
Add Term( {16, 1} ), Add Alias Term( {1, 1}, {2, 1} ),
Add Alias Term( {1, 1}, {3, 1} ), Add Alias Term( {1, 1}, {4, 1} ),
Add Alias Term( {1, 1}, {5, 1} ), Add Alias Term( {1, 1}, {6, 1} ),
Add Alias Term( {1, 1}, {7, 1} ), Add Alias Term( {1, 1}, {8, 1} ),
Add Alias Term( {1, 1}, {9, 1} ), Add Alias Term( {1, 1}, {10, 1} ),
Add Alias Term( {1, 1}, {11, 1} ), Add Alias Term( {1, 1}, {12, 1} ),
Add Alias Term( {1, 1}, {13, 1} ), Add Alias Term( {1, 1}, {14, 1} ),
Add Alias Term( {1, 1}, {15, 1} ), Add Alias Term( {1, 1}, {16, 1} ),
Add Alias Term( {2, 1}, {3, 1} ), Add Alias Term( {2, 1}, {4, 1} ),
Add Alias Term( {2, 1}, {5, 1} ), Add Alias Term( {2, 1}, {6, 1} ),
Add Alias Term( {2, 1}, {7, 1} ), Add Alias Term( {2, 1}, {8, 1} ),
Add Alias Term( {2, 1}, {9, 1} ), Add Alias Term( {2, 1}, {10, 1} ),
Add Alias Term( {2, 1}, {11, 1} ), Add Alias Term( {2, 1}, {12, 1} ),
Add Alias Term( {2, 1}, {13, 1} ), Add Alias Term( {2, 1}, {14, 1} ),
Add Alias Term( {2, 1}, {15, 1} ), Add Alias Term( {2, 1}, {16, 1} ),
Add Alias Term( {3, 1}, {4, 1} ), Add Alias Term( {3, 1}, {5, 1} ),
Add Alias Term( {3, 1}, {6, 1} ), Add Alias Term( {3, 1}, {7, 1} ),
Add Alias Term( {3, 1}, {8, 1} ), Add Alias Term( {3, 1}, {9, 1} ),
Add Alias Term( {3, 1}, {10, 1} ), Add Alias Term( {3, 1}, {11, 1} ),
Add Alias Term( {3, 1}, {12, 1} ), Add Alias Term( {3, 1}, {13, 1} ),
Add Alias Term( {3, 1}, {14, 1} ), Add Alias Term( {3, 1}, {15, 1} ),
Add Alias Term( {3, 1}, {16, 1} ), Add Alias Term( {4, 1}, {5, 1} ),
Add Alias Term( {4, 1}, {6, 1} ), Add Alias Term( {4, 1}, {7, 1} ),
Add Alias Term( {4, 1}, {8, 1} ), Add Alias Term( {4, 1}, {9, 1} ),
Add Alias Term( {4, 1}, {10, 1} ), Add Alias Term( {4, 1}, {11, 1} ),
Add Alias Term( {4, 1}, {12, 1} ), Add Alias Term( {4, 1}, {13, 1} ),
Add Alias Term( {4, 1}, {14, 1} ), Add Alias Term( {4, 1}, {15, 1} ),
Add Alias Term( {4, 1}, {16, 1} ), Add Alias Term( {5, 1}, {6, 1} ),
Add Alias Term( {5, 1}, {7, 1} ), Add Alias Term( {5, 1}, {8, 1} ),
Add Alias Term( {5, 1}, {9, 1} ), Add Alias Term( {5, 1}, {10, 1} ),
Add Alias Term( {5, 1}, {11, 1} ), Add Alias Term( {5, 1}, {12, 1} ),
Add Alias Term( {5, 1}, {13, 1} ), Add Alias Term( {5, 1}, {14, 1} ),
Add Alias Term( {5, 1}, {15, 1} ), Add Alias Term( {5, 1}, {16, 1} ),
Add Alias Term( {6, 1}, {7, 1} ), Add Alias Term( {6, 1}, {8, 1} ),
Add Alias Term( {6, 1}, {9, 1} ), Add Alias Term( {6, 1}, {10, 1} ),
Add Alias Term( {6, 1}, {11, 1} ), Add Alias Term( {6, 1}, {12, 1} ),
Add Alias Term( {6, 1}, {13, 1} ), Add Alias Term( {6, 1}, {14, 1} ),
Add Alias Term( {6, 1}, {15, 1} ), Add Alias Term( {6, 1}, {16, 1} ),
Add Alias Term( {7, 1}, {8, 1} ), Add Alias Term( {7, 1}, {9, 1} ),
Add Alias Term( {7, 1}, {10, 1} ), Add Alias Term( {7, 1}, {11, 1} ),
Add Alias Term( {7, 1}, {12, 1} ), Add Alias Term( {7, 1}, {13, 1} ),
Add Alias Term( {7, 1}, {14, 1} ), Add Alias Term( {7, 1}, {15, 1} ),
Add Alias Term( {7, 1}, {16, 1} ), Add Alias Term( {8, 1}, {9, 1} ),
Add Alias Term( {8, 1}, {10, 1} ), Add Alias Term( {8, 1}, {11, 1} ),
Add Alias Term( {8, 1}, {12, 1} ), Add Alias Term( {8, 1}, {13, 1} ),
Add Alias Term( {8, 1}, {14, 1} ), Add Alias Term( {8, 1}, {15, 1} ),
Add Alias Term( {8, 1}, {16, 1} ), Add Alias Term( {9, 1}, {10, 1} ),
Add Alias Term( {9, 1}, {11, 1} ), Add Alias Term( {9, 1}, {12, 1} ),
Add Alias Term( {9, 1}, {13, 1} ), Add Alias Term( {9, 1}, {14, 1} ),
Add Alias Term( {9, 1}, {15, 1} ), Add Alias Term( {9, 1}, {16, 1} ),
Add Alias Term( {10, 1}, {11, 1} ), Add Alias Term( {10, 1}, {12, 1} ),
Add Alias Term( {10, 1}, {13, 1} ), Add Alias Term( {10, 1}, {14, 1} ),
Add Alias Term( {10, 1}, {15, 1} ), Add Alias Term( {10, 1}, {16, 1} ),
Add Alias Term( {11, 1}, {12, 1} ), Add Alias Term( {11, 1}, {13, 1} ),
Add Alias Term( {11, 1}, {14, 1} ), Add Alias Term( {11, 1}, {15, 1} ),
Add Alias Term( {11, 1}, {16, 1} ), Add Alias Term( {12, 1}, {13, 1} ),
Add Alias Term( {12, 1}, {14, 1} ), Add Alias Term( {12, 1}, {15, 1} ),
Add Alias Term( {12, 1}, {16, 1} ), Add Alias Term( {13, 1}, {14, 1} ),
Add Alias Term( {13, 1}, {15, 1} ), Add Alias Term( {13, 1}, {16, 1} ),
Add Alias Term( {14, 1}, {15, 1} ), Add Alias Term( {14, 1}, {16, 1} ),
Add Alias Term( {15, 1}, {16, 1} ), Set Sample Size( 24 ),
Disallowed Combinations(
Sum(
X1 == 2,
X2 == 2,
X3 == 2,
X4 == 2,
X5 == 2,
X7 == 2,
X8 == 2,
X9 == 2,
X10 == 2,
X11 == 2,
X12 == 2,
X13 == 2,
X14 == 2,
X15 == 2,
X16 == 2
) > 8 &
Sum(
X1 == 2,
X2 == 2,
X3 == 2,
X4 == 2,
X5 == 2,
X7 == 2,
X8 == 2,
X9 == 2,
X10 == 2,
X11 == 2,
X12 == 2,
X13 == 2,
X14 == 2,
X15 == 2,
X16 == 2
) < 8
), Simulate Responses( 0 ), Save X Matrix( 0 ), Make Design}
);
Ho allegato la tabella dati con il nuovo esperimento. Ho aggiunto una colonna per contare i geni attivati di ogni esecuzione.
Penso che dovresti contattare l'assistenza JMP ( support@jmp.com ) per determinare il problema e se esiste una soluzione alternativa.
Re: Limitare il numero di fattori per esecuzione in un progetto DOEPenso che il primo script abbia fornito un design migliore. Non ci sono più di 8 geni attivati in nessuna serie. Perché vuoi che siano esattamente 8?
Il design personalizzato è ottimale per stimare il modello specificato. Non è un risultato combinatorio come tutte le possibili combinazioni di 8 geni attivi. Non hai necessariamente bisogno di tali combinazioni per stimare e testare i termini nel modello.
Re: Limitare il numero di fattori per esecuzione in un progetto DOEChe ne dici di usare le covariate per definire le combinazioni consentite e quindi creare un design con effetti principali e aggiungere tutti i 2FI se possibile? Devi solo rimuovere X16 a causa delle dipendenze lineari. La tabella delle covariate potrebbe essere creata usando un design fattoriale completo con 16 fattori categoriali con due livelli 0 e 1. Nella tabella creata ci sono ovviamente tutte le combinazioni, quindi dobbiamo rimuovere quelle con meno o più di 8 attivi. Questo può essere fatto cambiando il tipo delle colonne categoriali in numerico continuo. Quindi seleziona tutte le 16 colonne, fai clic con il pulsante destro del mouse -> nuova colonna formula -> combina -> somma.
Quindi seleziona una riga con valore 8, fai clic con il tasto destro, seleziona celle corrispondenti. Vai al menu tabelle-> sottoinsieme, ok. Questa è la tabella con tutte le righe in cui sono presenti esattamente 8 attivazioni. Questa tabella è la tua tabella delle covariate.
Menu-> DOE -> progettazione personalizzata.
seleziona il pulsante covariate, seleziona X1-X16. Controlla se l'X1 iniziale è stato rimosso e rinomina X1 2. deseleziona X1. Nel modello aggiungi 2FI, seleziona tutti i 2FI e clicca su necessario, cambia in se possibile. elimina effetto X16. Cambia il numero di esecuzioni in un numero fattibile (tenendo presente che il numero minimo di esecuzioni non consente 2FI aggiuntivi. Crea il progetto.
In allegato la tabella completa del disegno fattoriale, la tabella dei sottoinsiemi e lo script per replicare il disegno con le covariate.
I guru del DOE possono aggiungere se questo è un approccio fattibile per una situazione del genere. O se ci sarebbe qualche argomento per non seguire quell'approccio.