from agpy import readcol try: ne = int(sys.argv[1]) seed(1) X=plfit.plexp_inv(rand(ne),1,2.5) X[:100] = X[100:200] except ValueError: X = readcol(sys.argv[1]) if len(sys.argv)>2: discrete = bool(sys.argv[2]) else: discrete=None print "Cython" t1=time.time(); p3=plfit.plfit(X,discrete=discrete,usefortran=False,usecy=True); print time.time()-t1 print "Fortran" t1=time.time(); p1=plfit.plfit(X,discrete=discrete,usefortran=True); print time.time()-t1 print "Numpy" t1=time.time(); p3=plfit.plfit(X,discrete=discrete,usefortran=False); print time.time()-t1 print "Jeff Alcott's Powerlaw" t5=time.time(); p5=powerlaw.Fit(X,discrete=discrete); print time.time()-t5 print "Pure Python" t4=time.time(); p4=plfit.plfit_py(X.tolist()); print time.time()-t4
except ValueError: X = readcol(sys.argv[1]) if len(sys.argv) > 2: discrete = bool(sys.argv[2]) else: discrete = None print("Cython") t1 = time.time() p3 = plfit.plfit(X, discrete=discrete, usefortran=False, usecy=True) print(time.time() - t1) print("Fortran") t1 = time.time() p1 = plfit.plfit(X, discrete=discrete, usefortran=True) print(time.time() - t1) print("Numpy") t1 = time.time() p3 = plfit.plfit(X, discrete=discrete, usefortran=False) print(time.time() - t1) print("Jeff Alcott's Powerlaw") t5 = time.time() p5 = powerlaw.Fit(X, discrete=discrete) print(time.time() - t5) print("Pure Python") t4 = time.time() p4 = plfit.plfit_py(X.tolist()) print(time.time() - t4)
import scipy.io import plfit import time m = scipy.io.loadmat('AUD_Ret_1000.mat') A = m['A'].squeeze() Pnpy = plfit.plfit(A) Pfor = plfit.plfit(A) Pfor_nosmall = plfit.plfit(A) Pcy = plfit.plfit(A) Py = plfit.plfit_py(A) # for comparison r_for_nosmall = Pfor_nosmall.plfit(usefortran=True, verbose=True, quiet=False, discrete=False, nosmall=True) t0 = time.time() r_for = Pfor.plfit(usefortran=True, verbose=True, quiet=False, discrete=False, nosmall=False) t1 = time.time() r_cy = Pcy.plfit(usecy=True, verbose=True, quiet=False, discrete=False, nosmall=False)
import scipy.io import plfit import time m = scipy.io.loadmat('AUD_Ret_1000.mat') A = m['A'].squeeze() Pnpy = plfit.plfit(A) Pfor = plfit.plfit(A) Pfor_nosmall = plfit.plfit(A) Pcy = plfit.plfit(A) Py = plfit.plfit_py(A) # for comparison r_for_nosmall = Pfor_nosmall.plfit(usefortran=True, verbose=True, quiet=False, discrete=False, nosmall=True) t0 = time.time() r_for = Pfor.plfit(usefortran=True, verbose=True, quiet=False, discrete=False, nosmall=False) t1 = time.time() r_cy = Pcy.plfit(usecy=True, verbose=True, quiet=False, discrete=False, nosmall=False) t2 = time.time() r_ppy = Py.plfit(nosmall=False) t3 = time.time() r_npy = Pnpy.plfit(usefortran=False, usecy=False, verbose=True, quiet=False, discrete=False, nosmall=False) t4 = time.time() print("xmin,alpha for 4 different implementations: ") print("npy: ",r_npy) print("ppy: ",r_ppy) print("for: ",r_cy) print("cy: ",r_for)
#import cplfit import plfit import time from numpy.random import rand,seed from numpy import unique,sort,array,asarray,log,sum,min,max,argmin,argmax,arange import sys ne = int(sys.argv[1]) seed(1) X=plfit.plexp_inv(rand(ne),1,2.5) X[:100] = X[100:200] print "Cython" t1=time.time(); p3=plfit.plfit(X,usefortran=False,usecy=True); print time.time()-t1 print "Fortran" t1=time.time(); p1=plfit.plfit(X,usefortran=True); print time.time()-t1 print "Numpy" t1=time.time(); p3=plfit.plfit(X,usefortran=False); print time.time()-t1 print "Pure Python" t4=time.time(); p4=plfit.plfit_py(X); print time.time()-t4