¿Cómo seleccionar y excluir filas de dt1 según una lista única de valores de dt2?así que estoy usando dt1 para ejecutar un análisis de prueba t (Media por cámara por ChartID) y luego creando una tabla de datos combinados, dt2, de todos los valores p. Quiero filtrar esto a filas donde p <= 0.05, luego crear una lista distinta y única de estos pValues bajos y usarla para volver a trazar mi gráfico solo con los PValues bajos.
Estoy un poco atascado ahora tratando de vincularme al dt1 original. La selección final donde no parece estar funcionando.
También tenga en cuenta, si hay una mejor manera de seleccionar, excluir, volver a unirse a la fuente dt, hágamelo saber. Probé resumen, matriz asociativa.
//creating the table of pValues
dt2 = Report( ow[1] )["Means Comparisons", "Comparisons for all pairs using Tukey-Kramer HSD","Ordered Differences Report"][Table Box( 1 )] << Make Combined Data Table;
dt2 << set name( "pValue PairWise by Channel Tukey")
//select and exclude high pVals
dt2 << select where("p-Value"n > 0.05);
dt2 << exclude;
//get list of remaining Unique Chart_ID's
summarize(uniqueVals=by(CHART_ID));
//trying to select on the original source data
dt1 << select where( contains( uniqueVals, :CHART_ID));
//then need to invert and excludeAnalíticaScriptingRe: ¿Cómo seleccionar y excluir filas de dt1 según la lista única de valores de dt2?¿Son los ID de sus gráficos, por casualidad, numéricos? El resultado by () en Resumir es una lista de cadenas de caracteres, incluso si los identificadores de grupo originales eran números. Esto evitará que esos elementos de la lista (que, de nuevo, son cadenas) coincidan con los valores de la tabla original (que son números).
??
Salud,
Brady
Re: ¿Cómo seleccionar y excluir filas de dt1 según la lista única de valores de dt2?Mi primera suposición sería una falta de coincidencia entre los valores numéricos y de caracteres.
A continuación se muestra un ejemplo con Big Class:
Names Default To Here(1);
dt1 = Open("$SAMPLE_DATA/Big Class.jmp");
ow = Oneway(Y(:height), X(:age), All Pairs(1));
dt2 = Report(ow)["Means Comparisons", "Comparisons for all pairs using Tukey-Kramer HSD","Ordered Differences Report"][Table Box( 1 )] << Make Combined Data Table;
dt2 << set name( "pValue PairWise by Channel Tukey");
dt2 << select where(:"p-Value"n > 0.05);
dt2 << exclude;
summarize(dt2, uniqueVals=by(:level)); //check out the type of :level column, could be character
//convert to numbers OR you could convert values in dt1 to characters
For( i = 1, i <= N Items(uniqueVals ), i++,
uniqueVals[i] = Num(uniqueVals[i] )
);
dt1 << select where(Contains(uniqueVals, :age));Re: ¿Cómo seleccionar y excluir filas de dt1 según la lista única de valores de dt2?@brady_brady
buena pregunta. Entonces, mis datos de origen (dt1) tienen Chart_ID como Numeric Nominal. Después de crear gráficos y ejecutar la prueba t y luego generar una tabla de datos combinados (dt2), la columna Chart_ID es el carácter nominal.