Unisci CSV in JMP 13CIAO,
Mi piace unire alcuni file CSV in una determinata directory. I file hanno un formato simile ma amano anche saltare poche righe dopo le intestazioni e mantenere solo l'intestazione per il primo file. Una volta uniti i file, posso fare l'analisi sul file unito. Ho controllato la community di JMP e non ho trovato la soluzione migliore. Apprezzo il tuo aiuto nel fornirmi uno script che fa questo. Grazie.
Re: Unire CSV in JMP 13Grazie Jim. Sono stato in grado di farlo funzionare utilizzando la funzione Word(). Grazie per il vostro sostegno.
Re: Unire CSV in JMP 13Grazie Jim. Stavo leggendo principalmente su Pick File () e ho pensato che ci fosse un modo per farlo. Proverò il tuo suggerimento e ti farò sapere. Grazie ancora.
Re: Unire CSV in JMP 131. Consiglio caldamente di leggere la Guida allo scripting......è necessario ottenere una revisione dei diversi elementi disponibili in JSL.......
La soluzione a ciò che hai richiesto è semplicemente eliminare il nome del file dalla fine del percorso completo.In JSL, ci sono tutti i tipi di funzioni di gestione dei caratteri.Vedere:
Aiuto==>Indice scripting==>Funzioni==>Carattere
In particolare, è necessario utilizzare la funzione Word()
completefilename = "/C:/Users/txjim/Parameter Ranking/Parameter Ranking_v8 with private.jsl";
filename = Word( -1, completefilename, "/" );<BR />show( filename );
filename ha il valore "Parameter Ranking_v8 with private.jsl"
Re: Unire CSV in JMP 13Grazie Jim. Ho usato Pick File () ma ho bisogno solo dei nomi dei file e non delle informazioni sul percorso completo/nome file. C'è un modo per ottenere invece il nome del file?
prefilelist = Pick File(
"Select JMP File",
"",
{"JMP Files|jmp;jsl;csv", "All Files|*"},
1,
0,
"",
multiple // save flag is 0, allows multiple file selection
);
show(prefilelist);
Grazie per il supporto continuo.
Re: Unire CSV in JMP 13Nello Scripting Index troverai la definizione e un esempio di utilizzo di Pick File().Questo ti permetterà di selezionare i file.
Re: Unire CSV in JMP 13Grazie a tutti per il vostro grande supporto. Mi piace anche poter scegliere la directory e selezionare i singoli file csv invece di selezionare tutti i file csv nella directory. Sto usando lo script scritto da Byron (JMP) e ho allegato qui. Funziona perfettamente, ma se qualcuno può aiutarmi a selezionare singoli file csv, sarebbe molto utile. Grazie
Re: Unire CSV in JMP 13Grazie. Sto cercando di creare un'unione csv per JMP13 ed è bello sapere che JMP14 può gestirlo. È ora di aggiornare!!
Re: Unire CSV in JMP 13Grazie. Ho provato anche il tuo e funziona bene.
Re: Unire CSV in JMP 13JMP 14 ha l'importazione di più file. È progettato per caricare file da una directory e combinare file simili (stesse colonne, stessi nomi). Può caricare file di testo in una tabella di dati per Esplora testo o file CSV in una tabella utilizzando le opzioni CSV per le intestazioni e saltando alcune righe.
Choosing files from a directoryChoosing files from a directoryScelta dei file da una directory
CSV optionsCSV optionsOpzioni CSV
Re: Unire CSV in JMP 13dt = New Table( "Untitled", Add Rows( 4 ),
New Column( "Column 1", Character, "Nominal",
Set Values( {"abc", "1", "2", "3"} ) ),
New Column( "Column 2", Character, "Nominal",
Set Values( {"def", "6", "5", "4"} ) ),
New Column( "Column 3", Character, "Nominal",
Set Values( {"ghi", "7", "6", "5"} ) ),
New Column( "Column 4", Character, "Nominal",
Set Values( {"jkl", "2", "3", "4"} ) )
);
// Rename each column to the first row
for (i = 1, i <= ncols(dt), i++,
column(i) << set name(column(i)[1]);
);
// Remove the first row
dt << delete rows([1]);Re: Unire CSV in JMP 13Grazie. Funziona perfettamente. L'ultima cosa che volevo fare è impostare i nomi delle colonne uguali al valore della prima riga e quindi eliminare la prima riga.
Re: Unire CSV in JMP 13Questo codice dovrebbe fare il trucco.Usi OTTIENI RIGHE DOVE invece di SELEZIONA DOVE .
dt = New Table( "Test", Add Rows( 5 ),
New Column( "Column 2", Character, "Nominal",
Set Values( {"ABC", "ABC", "DEF", "DEF", "ABC"} )
)
);
abc_rows = dt << get rows where(:Column 2 == "ABC");
nr = nrows(abc_rows);
if (nr > 1,
abc_new = abc_rows[2::nr];
dt << delete rows(abc_new);
);
Re: Unire CSV in JMP 13Grazie. Che funzioni. Ora volevo esaminare ogni riga della tabella ed eliminare dove Colonna 2 = "ABC" tranne la prima riga.
Ho fatto qualcosa del genere:
dt = Tabella dati corrente();
N = N Righe (dt);
Per (i= 2, i <= N, i++,
dt << select Where (:Column 2 == "ABC");
);
Ha selezionato tutte le righe in cui Colonna 2 = "ABC". Volevo mantenere la prima riga da non selezionare. Grazie per il vostro continuo supporto.
Re: Unire CSV in JMP 13Seleziona righe seleziona le righe per numero di riga.Quello che devi usare è
dt << Seleziona Dove( :Column 2 == "" );
Re: Unire CSV in JMP 13Grazie. Sono stato in grado di unire csv ora. Ora devo eliminare le righe in cui, ad esempio, "Coulmn 2" è vuoto. Ho usato quanto segue e non ha funzionato:
dt = Tabella dati corrente():
dt << seleziona righe(:Column 2 == "");
Seleziona solo una riga, non tutte vuote. Sto usando JMP 13 per questo. Per favore aiuto. Grazie.
Re: Unire CSV in JMP 13L'unico modo che vedo per poterlo fare è il seguente:
1. Leggere ciascuno dei file CSV.
2. Elimina i record dopo ciascuna delle intestazioni che non desideri.
3. Modificare i nomi nella tabella dati da 2 a N in modo che corrispondano ai nomi nella prima tabella dati che si desidera abbinare.
4. Concatenare le tabelle insieme.
5. Salva nuovamente il file concatenato come file CSV.
Un'operazione piuttosto semplice, ma laboriosa, date le modifiche alla tabella dei dati che potrebbe essere necessario eseguire.