Ciao,
Per il mio codice di seguito, arresto anomalo di JMP per eccezione di errore. Qualche suggerimento? Grazie.
csv_file = "C:/test4.csv";
CSV_data = Open( csv_file );
delList = {};
delColumns = {"Country", "Percent_Name_Count", "Name", "ID"};
nColumns = N Items( delColumns );
For( k = 1, k <= nColumns, k++,
For( i = 1, i<= N Cols(CSV_data), i++,
If( Contains( Uppercase( as Column( i ) << get name ), Uppercase(Char(delColumns[k])) ) > 0,
insert into(delList, column(i)<<GET name=""> 0, CSV_data << delete columns( delList ));
test4.csv
ID,Name,Country,Column1_Value,Column2_Value_More,Percent_Name_Count
125480,Jack,CA,0.7,0.7,0.7
125481,Jane,US,0.69,0.69,0.69
125482,Joe,BZ,0.71,0.71,0.71
125483,Jim,FR,0.73,0.73,0.73
125484,Jerry,US,0.72,0.72,0.72
125485,John,CA,0.71,0.71,0.71</GET>Il tuo codice ha funzionato senza errori sul mio Windows 10, 64 bit, JMP 15.1.0. Tuttavia, il tuo codice stava facendo molto di più del necessario. La funzione Contains () non funziona solo su stringhe letterali, ma funziona anche su Elenchi. Ho modificato il codice di seguito per ottenere ciò che desideri sfruttando il modo in cui la funzione Constraint () funziona sugli elenchi.
csv_file = "C:/test4.csv";
CSV_data = Open( csv_file );
delList = {};
delColumns = {"Country", "Percent_Name_Count", "Name", "ID"};
nColumns = N Items( delColumns );
For( k = 1, k <= nColumns, k++,
delColumns[k] = Uppercase( delColumns[k] )
);
For( i = 1, i <= N Cols( CSV_data ), i++,
If( Contains( delColumns, Uppercase( Column( i ) << get name )) > 0,
Insert Into( delList, Column( i ) << get name )
)
);
ndelList = N Items( delList );
If( ndelList > 0,
CSV_data << delete columns( delList )
);