ayuda con el códigopara = {"Age","Orientation","Preference","Salary","Number","SN","Years","Service"} //some of the column names needed
main_table_col_remain = main_tab << get column names(string);
For( i = N Items( main_table_col_remain ), i > 0, i--,
If(!Contains( main_table_col_remain[i],<FONT color="#FF0000"> ??</FONT> ) ,
Remove From( main_table_col_remain, i )
));
¿Qué pongo en el "??" ¿parte? He estado dando vueltas alrededor de este código por un tiempo ahora. Quiero eliminar los nombres de columna no almacenados en el párr.
Re: ayuda con el códigoTenías la comparación al revés. Desea tomar main_table_col_remain [1] y mirar la lista para para ver si está allí, luego eliminarla de la lista main_table_co_remaining
para = {"Age", "Orientation", "Preference", "Salary", "Number", "SN", "Years", "Service"}; //some of the column names needed
main_table_col_remain = main_tab << get column names( string );
For( i = N Items( main_table_col_remain ), i > 0, i--,
If( Contains( Para, main_table_col_remain[i] ),
Remove From( main_table_col_remain, i, 1 )
)
);Re: ayuda con el códigopregunta de seguimiento, ¿cómo modifico este código para que no lo divida individualmente?
for(i=1, i<=n, i++,
if((contains item(Para[i], main_table_col_remain) == 1),
param = main_table_col_remain[i];
tempdt =eval(parse( " combined_tab << Split(
Split By(:Source_Table),
Split(:Name(\!"" ||param|| "\!")),
Remaining Columns(Drop All),
Sort by Column Property
)"
))));
Re: ayuda con el códigoSi estoy leyendo correctamente lo que quieres hacer, todo lo que necesitas hacer es colocar todos los main_table_col_remain columnas en la definición Split al mismo tiempo. Aquí hay un ejemplo simple de dividir la altura y el peso por la columna Sexo en la tabla de datos de muestra Big Class
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );<BR />dt << Split(
Split By( :sex ),
Split( :height, :weight ),
Remaining Columns( Drop All ),
Sort by Column Property
);
Con los nombres complejos que tiene en su tabla de datos, tendría la tendencia de agregar: Nombre () a cada elemento en su main_table_col_remain y en su caso, convierta la lista en una cadena
myString = ":Name( \!"" || char(main_table_col_remain[1]) || "\!" )";
For( I = 2, I<= N Items( main_table_col_remain ), i++,
myString = myString || ", :Name( \!"" || char(main_table_col_remain[i]) || "\!" )" ;
);
entonces puedes agregar la lista completa a la división
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
main_table_col_remain = dt << get column names( string, continuous );
myString = ":Name( \!"" || Char( main_table_col_remain[1] ) || "\!" )";
For( I = 2, I <= N Items( main_table_col_remain ), i++,
myString = myString || ", :Name( \!"" || Char( main_table_col_remain[i] ) || "\!" )"
);
Eval(
Parse(
"
dtSplit = dt << Split(
Split By( :sex ),
Split( " || myString ||
" ),
Remaining Columns( Drop All ),
Sort by Column Property
);"
)
);