Python et JMP 18Bonjour,
J'essaie d'utiliser un morceau de code dans JMP 18, mais je ne suis pas sûr de comprendre son fonctionnement. J'installe les packages Pythonn au tout début, puis j'envoie mes variables à Python et j'exécute le code Python. Mais j'obtiens systématiquement l'une des erreurs suivantes : soit numpy n'est pas détecté, bien que numpy soit installé, soit la variable que je viens d'envoyer ne l'est plus.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
lstMeasures = Column( dt, "height" ) << Get As Matrix();
Python Install Packages( "numpy pandas scipy" );
Python Send( lstMeasures );
Python Submit(
"
import numpy as np
from scipy.stats import kstest, norm, weibull_min, rayleigh
data = np.array(lstMeasures)
# Fit des lois
mu, sigma = norm.fit(data)
ks_norm = kstest(data, 'norm', args=(mu, sigma))
c, loc, scale = weibull_min.fit(data)
ks_weibull = kstest(data, 'weibull_min', args=(c, loc, scale))
loc_r, scale_r = rayleigh.fit(data)
ks_rayleigh = kstest(data, 'rayleigh', args=(loc_r, scale_r))
"
);
ks_norm = Python Get( ks_norm );
ks_weibull = Python Get( ks_weibull );
ks_rayleigh = Python Get( ks_rayleigh );


Automatisation et scriptsRe: Python et JMP 18Exécutez-vous exactement ce code dans l'éditeur de scripts JMP (JSL) ? Je ne vois aucun problème avec le script et il fonctionne parfaitement.
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
lstMeasures = Column(dt, "height") << Get As Matrix();
Python Install Packages("numpy pandas scipy");
Python Send(lstMeasures);
Python Submit("
import numpy as np
from scipy.stats import kstest, norm, weibull_min, rayleigh
data = np.array(lstMeasures)
mu, sigma = norm.fit(data)
ks_norm = kstest(data, 'norm', args=(mu, sigma))
c, loc, scale = weibull_min.fit(data)
ks_weibull = kstest(data, 'weibull_min', args=(c, loc, scale))
loc_r, scale_r = rayleigh.fit(data)
ks_rayleigh = kstest(data, 'rayleigh', args=(loc_r, scale_r))
");
ks_norm = Python Get(ks_norm);
ks_weibull = Python Get(ks_weibull);
ks_rayleigh = Python Get(ks_rayleigh);
show(ks_norm, ks_weibull, ks_rayleigh);
@Paul_Nelson
Re: Python et JMP 18Bonjour, j'utilisais JMP 18.0.0 mais j'ai redémarré JMP et maintenant je n'ai plus de problème...
Re: Python et JMP 18Parfois, notamment lors de la première exécution de JMP, il peut être nécessaire de le redémarrer pour qu'il reconnaisse les nouveaux packages Python installés. Numpy est particulièrement capricieux. De plus, le mécanisme de gestion des packages de Python ne recherche pas les packages dont l'importation a échoué. Il sait que l'échec a été constaté, alors pourquoi réessayer ? Vous pouvez forcer une tentative de rechargement du package en utilisant importlib et reload.