def makeseries(func, iterationlist, amount, title="Nada", graphs=False): values = [] ilist = [] rawdata = [] for i in iterationlist: for j in range(amount): x, y = func(i) alfa, xdfa, ydfa, reta = statsfuncs.dfa1d(y, 1) freqs, power, xdata, ydata, amp, index, powerlaw, INICIO, FIM = statsfuncs.psd( y) psi, alphal, falpha = mfdfa.makemfdfa(y) values.append([ statsfuncs.variance(y), statsfuncs.skewness(y), statsfuncs.kurtosis(y) + 3, alfa, index, psi ]) ilist.append(i) if graphs == True: plt.plot(alphal, falpha, 'ko-', label=str(j)) if graphs == True: plt.title("Espectro de Singularidade, para: {} {}".format( title, i)) plt.xlabel(r'$\alpha$') plt.ylabel(r'$f(\alpha)$') plt.grid('on', which='major') plt.savefig("{}singularityspectrum{}".format(title, i)) plt.show() rawdata.append([ i, x, y, alfa, xdfa, ydfa, reta, freqs, power, xdata, ydata, amp, index, powerlaw, INICIO, FIM ]) return values, ilist, rawdata
def makeseries(func, iterationlist, amount): values=[] ilist=[] rawdata=[] for i in iterationlist: for j in range(amount): x,y=func(i) alfa,xdfa,ydfa, reta = funcs.dfa1d(y,1) freqs, power, xdata, ydata, amp, index, powerlaw, INICIO, FIM = funcs.psd(y) psi=mfdfa.makemfdfa(y) values.append([funcs.variance(y), funcs.skewness(y), funcs.kurtosis(y)+3, alfa, index,psi]) ilist.append(i) rawdata.append([i,x,y, alfa, xdfa, ydfa, reta, freqs, power, xdata, ydata, amp, index, powerlaw, INICIO, FIM]) return values, ilist, rawdata
################################### MAIN ##################################### ############################################################################## namefile="daily-cases-covid-19.csv" l=pd.read_csv(namefile) codes=list(set(l["Entity"])) codes=codes[1:] l=l.set_index("Entity") values=[] countries=["Brazil", "India", "Iran", "South Africa", "Egypt" ] for i in codes: y=list(l.filter(like=i, axis=0)["Daily confirmed cases (cases)"]) if len(y) > 50: alfa,xdfa,ydfa, reta = funcs.dfa1d(y,1) freqs, power, xdata, ydata, amp, index, powerlaw, INICIO, FIM = funcs.psd(y) values.append([funcs.variance(y), funcs.skewness(y), funcs.kurtosis(y), alfa, index, mfdfa.makemfdfa(y), i]) skew2=[] alfa=[] kurt=[] index=[] psi=[] for i in range(len(values)): skew2.append(values[i][1]**2) kurt.append(values[i][2]) alfa.append(values[i][3]) index.append(values[i][6]) skew2=np.array(skew2) alfa=np.array(alfa)
codes = list(set(l["Entity"])) codes = codes[1:] l = l.set_index("Entity") values = [] countries = ["Brazil", "India", "Iran", "South Africa", "Egypt"] for i in codes: y = list(l.filter(like=i, axis=0)["Daily confirmed cases (cases)"]) if len(y) > 50: alfa, xdfa, ydfa, reta = funcs.dfa1d(y, 1) freqs, power, xdata, ydata, amp, index, powerlaw, INICIO, FIM = funcs.psd( y) values.append([ funcs.variance(y), funcs.skewness(y), funcs.kurtosis(y), alfa, index, mfdfa.makemfdfa(y), i ]) skew2 = [] alfa = [] kurt = [] index = [] psi = [] for i in range(len(values)): skew2.append(values[i][1]**2) kurt.append(values[i][2]) alfa.append(values[i][3]) index.append(values[i][6]) skew2 = np.array(skew2)
codes = list(set(l["Entity"])) codes = codes[1:] l = l.set_index("Entity") values = [] countries = ["Belgium", "Brazil", "France", "Portugal", "Spain"] for i in codes: y = list(l.filter(like=i, axis=0)["Daily confirmed cases (cases)"]) if i in countries: result = waipy.cwt(y, 1, 1, 0.125, 2, 4 / 0.125, 0.72, 6, 'DOG', "x") waipy.wavelet_plot(i, range(len(y)), y, 0.03125, result, savefig=True) if len(y) > 50: SOC(y, i) alfa, xdfa, ydfa, reta = statsfuncs.dfa1d(y, 1) freqs, power, xdata, ydata, amp, index, powerlaw, INICIO, FIM = statsfuncs.psd( y) a, b, c = mfdfa.makemfdfa(y) values.append([ statsfuncs.variance(y), statsfuncs.skewness(y), statsfuncs.kurtosis(y), alfa, index, a, i ]) plt.show() skew2 = [] alfa = [] kurt = [] index = [] psi = [] for i in range(len(values)): skew2.append(values[i][1]**2) kurt.append(values[i][2])
x.append(y[-2] + 1.0 - a * x[-1] * x[-1]) return y grng = [] endo = [] exo = [] logis = [] henon = [] white = [] pink = [] red = [] plt.title("Espectro de singularidade: GRNG") for i in range(30): a, b, c = mfdfa.makemfdfa(randomseries(8192), False) plt.plot(b, c, 'ko-') plt.xlabel(r"$\alpha$") plt.legend() plt.ylabel(r"f($\alpha$)") plt.show() plt.title("Espectro de singularidade: pmodel") for i in range(15): if i == 0: a, b, c = mfdfa.makemfdfa(pmodel("Endogenous")) plt.plot(b, c, 'ro-', label="Endogenous") a, b, c = mfdfa.makemfdfa(pmodel("Exogenous")) plt.plot(b, c, 'bo-', label="Exogenous") else: a, b, c = mfdfa.makemfdfa(pmodel("Endogenous")) plt.plot(b, c, 'ro-')