Formule efficaceHey,
J'ai une table Big Data (~ 30 millions de lignes * 20 colonnes) et ce test de réussite / échec rend JMP bloqué.
Le PC est Windows 10 64 bits, i7-4770 @ 3.4Ghz, SSD et 32GB DDR3 1600Mhz.
Le JSL c'est:
cctable << New Column( "New status", Character, Nominal, Formula( If( :result < :L | :result > :H, "Fail", "Pass" ) ) );
Cela peut-il être plus efficace? Y a-t-il un meilleur choix dans JMP pour le faire?
Merci,
Je fais
Re: Formule efficaceMerci!
Je le ferai.
Bien que ce qui a le plus aidé soit la table de 1M * 100 plutôt que 80M * 5
Re: Formule efficace
Mon test prend 15 secondes pour créer la table et 15 secondes pour ajouter la colonne supplémentaire. J'utilise << runFormulas pour que la formule soit évaluée immédiatement plutôt que d'attendre le temps d'inactivité.
start = Tick Seconds();
dt = New Table( "Untitled",
Add Rows( 30e6 ),
New Column( "L", Numeric, "Continuous", Format( "Best", 12 ), Formula( Random Integer( 1, 9 ) ) ),
New Column( "result", Numeric, "Continuous", Format( "Best", 12 ), Formula( Random Integer( 1, 9 ) ) ),
New Column( "H", Numeric, "Continuous", Format( "Best", 12 ), Formula( Random Integer( 1, 9 ) ) )
);
dt<<RUNFORMULAS> :H, "Fail", "Pass" ) ) );
dt << runformulas;
stop = Tick Seconds();
Show( "add", stop - start, N Rows( dt ) );</RUNFORMULAS>
"créer";
arrêt - démarrage = 12,8833333333605;
N lignes (dt) = 30000000;
"ajouter";
arrêt - démarrage = 12,6833333332906;
N lignes (dt) = 30000000;
Formula added Formule ajoutée
Re: Formule efficaceMerci, mais la "Nouvelle colonne (... ) "La commande prend du temps et tout est également bloqué.
J'essaierai d'utiliser update / join
Si vous (ou quelqu'un d'autre
) avez une autre idée, je serai ravie de l'entendre.
Merci.
Re: Formule efficaceSalut,
N'utilisez pas de formules de colonne avec une telle table.
Essayez d'exécuter un calcul avec JSL et collez les résultats.
Veuillez voir ci-joint un tableau et un script que j'ai utilisé.
Cordialement,
À M.