Limite la cantidad de factores por ejecución en un diseño DOEHola,
Estoy evaluando 16 factores categóricos (16 genes diferentes que estoy activando), pero la cantidad total de ADN que puedo entregar es limitada, por lo que cuantos más genes intento activar, más débil será la activación. Cualquier cantidad superior a 8 genes por ejecución será difícil de interpretar debido a este efecto dilutivo. ¿Hay alguna manera de limitar la cantidad de factores en cualquier ejecución a 8 objetivos, pero aún así obtener información sobre los efectos principales y algo de 2FI de los 16?
¡Gracias!
Caspe
Diseño de experimentosRe: Limitar la cantidad de factores por ejecución en un diseño DOEDebe utilizar el diseño personalizado para este experimento. En particular, debe especificar una restricción de factor. Utilicé los nombres de factor genéricos X1 a X16 y los niveles de factor genéricos L1 y L2. Supongo que L1 es un gen inactivo y L2 es un gen activado.
JMP representa falso como 0 y verdadero como 1. Pruebo para ver si los factores están configurados en L2 (activados). Si es así, la comparación devuelve 1. Sumo los resultados de las comparaciones y desautorizo cualquier ejecución mayor que 8.
Aquí se muestran las comparaciones utilizadas en el script para las restricciones no permitidas.
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
Aquí está el script para iniciar la plataforma de diseño personalizado y realizar su diseño:
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}
);
Diseñé el experimento para estimar y probar únicamente los efectos principales para demostrar el principio. Si este enfoque es satisfactorio, puede cambiar los términos del modelo para que se adapten a su propósito.
Re: Limitar la cantidad de factores por ejecución en un diseño DOEGracias por la respuesta, lo anterior es muy útil. Cuando genero un diseño a partir de lo anterior, obtengo ejecuciones de 7, 8 y 9 factores por ejecución, lo que me confunde un poco. Cualquier idea sobre por qué sucede esto o cómo puedo solucionarlo sería muy apreciada.
Además, ¿hay alguna manera de bloquearlo en 8 factores en lugar de <8? Intenté cambiar el < por un = en el script para las restricciones no permitidas, pero eso invalidó el script...
¡Gracias!
Re: Limitar la cantidad de factores por ejecución en un diseño DOEIntenté agregar otra cláusula (la suma de los genes activos también tenía que ser menor a 8), ¡pero el resultado fue peor! Aquí está el script actualizado:
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}
);
Adjunté la tabla de datos con el nuevo experimento. Agregué una columna para contar los genes activados de cada ejecución.
Creo que deberías contactar al soporte de JMP ( support@jmp.com ) para determinar el problema y si existe una solución alternativa.
Re: Limitar la cantidad de factores por ejecución en un diseño DOECreo que el primer script ofrecía un mejor diseño. No hay más de 8 genes activados en ninguna ejecución. ¿Por qué quieres que sean exactamente 8?
El diseño personalizado es óptimo para estimar el modelo especificado. No es un resultado combinatorio como todas las combinaciones posibles de 8 genes activos. No necesariamente necesita dichas combinaciones para estimar y probar los términos del modelo.
Re: Limitar la cantidad de factores por ejecución en un diseño DOE¿Qué tal si se utilizan covariables para definir las combinaciones permitidas y luego se crea un diseño con efectos principales y se suman todos los 2FI, si es posible? Solo hay que eliminar X16 debido a las dependencias lineales. La tabla de covariables se puede crear utilizando un diseño factorial completo con 16 factores categóricos con dos niveles 0 y 1. En la tabla creada, por supuesto, hay todas las combinaciones, por lo que debemos eliminar las que tienen menos o más de 8 activos. Esto se puede hacer cambiando el tipo de las columnas categóricas a numéricas continuas. Luego, seleccione las 16 columnas, haga clic derecho -> nueva columna de fórmula -> combinar -> suma.
Luego, seleccione una fila con el valor 8, haga clic derecho, seleccione las celdas coincidentes. Vaya al menú Tablas-> Subconjunto, Aceptar. Esta es la tabla con todas las filas donde hay exactamente 8 activaciones. Esta tabla es su tabla de covariables.
Menú->DOE -> diseño personalizado.
Seleccione el botón de covariables, seleccione X1-X16. Verifique si se eliminó el X1 inicial y cambie el nombre de X1 2. Deseleccione X1. En el modelo, agregue 2FI, seleccione todos los 2FI y haga clic en lo necesario, cambie a si es posible. Eliminar el efecto X16. Cambie el número de ejecuciones a un número factible (tenga en cuenta que el número mínimo de ejecuciones no permite ningún 2FI adicional). Cree el diseño.
Adjunto la tabla de diseño factorial completo, la tabla de subconjuntos, el script para replicar el diseño con covariables.
Los expertos del Departamento de Energía podrían agregar si ese es un enfoque viable para una situación como esta o si habría algún argumento para no seguir ese enfoque.