Come faccio a importare solo i file più recenti in JMP.Ciao a tutti,
Al momento dispongo di uno script che importa più file da una directory utilizzando la funzione IMF con un filtro per data e nome abilitato. Importo circa 4000 file e quindi ripulisco le tabelle di dati in un'unica tabella di dati che viene salvata. La directory continua ad essere aggiornata con nuovi file e vorrei importare i nuovi file solo per poterli aggiungere all'ultima tabella delle date.
- Mi chiedevo se posso ottenere il timestamp in cui è stata eseguita l'importazione dai registri JMP e utilizzarlo per aggiornare il filtro dei dati in modo che venga eseguito solo dall'ultima data di importazione.
- Ho provato a ottenere i nomi dei file dalla colonna Nome file, a creare un elenco e a confrontarlo con la directory, senza fortuna.
Il tuo aiuto è molto apprezzato.
tblRef = Importazione di più file(
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
) <
tblRef << Imposta nome("Dati");
Automazione e scriptingAccesso ai datiCombinazione e pulizia dei dati Ri: Come importare solo i file più recenti in JMP.Potresti scegliere la data massima del file dalla tabella dei risultati dell'importazione MFI e utilizzarla nell'importazione successiva per limitare i file?
Ri: Come importare solo i file più recenti in JMP.Come posso scegliere la data massima del file?
C'è un modo per ottenere il timestamp dai registri?
Ri: Come importare solo i file più recenti in JMP.Dovresti avere la data del file nella tabella dati poiché hai abilitato l'opzione Imposta aggiunta colonna data file. Quindi puoi usare ad esempio Col Max()
Col Max(:File Date)
Ri: Come importare solo i file più recenti in JMP.Importa ancora tutto. Questo è quello che ho fatto:
dt=open("C:\Utenti\");
LastImport = dt << Col Max(:"Data file");
maxData = UltimaImportazione[1];
tblRef = Importazione di più file(
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
) <
tblRef << Imposta nome("Dati");
Ri: Come importare solo i file più recenti in JMP.Penso che dovrai valutare il valore datetime all'interno di più impostazioni di importazione di file. Di seguito è riportato un esempio. Scopri come vengono utilizzati Eval(EvalExpr()) ed Expr() ( Inserisci un'espressione in un'altra utilizzando Eval Insert, Eval Expr, Parse e Substitute )
Names Default To Here(1);
dt = New Table("12345678_Cycle_123456781_Cycle",
Add Rows(6),
Compress File When Saved(1),
New Column("Cycle",
Numeric,
"Continuous",
Format("Best", 12),
Set Values([1, 2, 3, 4, 5, 6])
),
New Column("File Date",
Numeric,
"Continuous",
Format("yyyy-mm-ddThh:mm:ss", 20, 0),
Input Format("yyyy-mm-ddThh:mm:ss", 0),
Set Values(
[3741613139.034, 3741613139.034, 3741613139.034, 3783350373.379, 3783350373.379,
3783350373.379]
)
)
);
max_date = Col Max(Column(dt, "File Date"));
mfi = Eval(EvalExpr(Multiple File Import(
<<SET folder="">),
<<SET show="" hidden=""></SET></SET>Ri: Come importare solo i file più recenti in JMP.Ha funzionato. Grazie mille!
Ri: Come importare solo i file più recenti in JMP.Potrebbe essere necessario aggiungere un po' di tempo al tempo massimo per evitare di ottenere il file con la data massima del file un paio di volte. A seconda della frequenza con cui ricevi nuovi file, aggiungerne un secondo potrebbe essere sufficiente
max_date = Col Max(Column(dt, "File Date")) + 1;
ma molto probabilmente MFI capisce anche i decimali, quindi potresti aggiungere 0,01 ad esempio (potrebbe essere una buona idea testare con piccole quantità di file)