def run_main_prog(params): #start = time.clock() (m,numSig) = params # m is index for noise level, numSig is idex for realization numSurr = 99 SignalAndSurr = numpy.zeros((numSurr+1,N),dtype='float32') noise = NL[m]*numpy.std(SignalX[numSig,:].copy())*numpy.random.normal(0,1,N) SignalAndSurr[0,:] = SignalX[numSig,:].copy()+noise for j in range(1,numSurr+1,1): SignalAndSurr[j,:] = UnivariateSurrogates(SignalAndSurr[0,:].copy(),120) T = numpy.zeros((numSurr+1,1),dtype='float32') for k in range(0,numSurr+1,1): ts = SignalAndSurr[k,:] ts.shape = (-1,1) psv = RecurrencePlot.embed_time_series(ts,dim=3,tau=3) randomVertices = random.sample(xrange(psv.shape[0]), int(sys.argv[1])) R = RecurrenceNetwork(psv[randomVertices,:],recurrence_rate=float(sys.argv[2]),silence_level=2) T[k] = R.transitivity() # compute network measure for hypothesis testing if T[0] > max(T[1:]): #non-parametric testing H0 = 1 #null-hypothesis rejected else: H0 = 0 #elapsed = (time.clock() - start) #print elapsed return (H0)
# Calculate and print the recurrence rate again to check if it worked... RR = rp.recurrence_rate() print("Recurrence rate:", RR) # Calculate some standard RQA measures DET = rp.determinism(l_min=2) LAM = rp.laminarity(v_min=2) print("Determinism:", DET) print("Laminarity:", LAM) # Generate a recurrence network at fixed recurrence rate rn = RecurrenceNetwork(time_series, dim=DIM, tau=TAU, metric=METRIC, normalize=False, recurrence_rate=RR) # Calculate average path length, transitivity and assortativity L = rn.average_path_length() T = rn.transitivity() C = rn.global_clustering() R = rn.assortativity() print("Average path length:", L) print("Transitivity:", T) print("Global clustering:", C) print("Assortativity:", R)
# Get time series section for current window time_series = data[j * delta:j * delta + T_embedded] local_step_sequence[j] = j * delta + T_embedded / 2 # Prepare recurrence network from original data rec_net = RecurrenceNetwork(time_series.flatten(), dim=DIM, tau=TAU, metric=METRIC, normalize=False, silence_level=2, recurrence_rate=RR) # Calculations for original recurrence network local_result["Average path length"][j] = rec_net.average_path_length() local_result["Transitivity"][j] = rec_net.transitivity() #local_result["Assortativity"][j] = rec_net.assortativity() #local_result["Diameter"][j] = rec_net.diameter() # Calculate RQA measures #local_result["Determinism"][j] = rec_net.determinism() #local_result["Laminarity"][j] = rec_net.laminarity() #local_result["Mean diagonal line length"][j] = rec_net.average_diaglength() #local_result["Trapping time"][j] = rec_net.trapping_time() #local_result["Diagonal line entropy"][j] = rec_net.diag_entropy() #local_result["Autocorrelation"][j] = autocorrelation(time_series, lag=1) #local_result["Mean"][j] = time_series.mean() #local_result["Standard deviation"][j] = time_series.std() # Update progress bar every step
import numpy as np from pyunicorn.timeseries import RecurrenceNetwork x = np.sin(np.linspace(0, 10 * np.pi, 1000)) net = RecurrenceNetwork(x, recurrence_rate=0.05) print net.transitivity()
# Generate a recurrence plot object with fixed recurrence rate RR rp = RecurrencePlot(time_series, dim=DIM, tau=TAU, metric=METRIC, normalize=False, recurrence_rate=RR) # Calculate and print the recurrence rate again to check if it worked... RR = rp.recurrence_rate() print "Recurrence rate:", RR # Calculate some standard RQA measures DET = rp.determinism(l_min=2) LAM = rp.laminarity(v_min=2) print "Determinism:", DET print "Laminarity:", LAM # Generate a recurrence network at fixed recurrence rate rn = RecurrenceNetwork(time_series, dim=DIM, tau=TAU, metric=METRIC, normalize=False, recurrence_rate=RR) # Calculate average path length, transitivity and assortativity L = rn.average_path_length() T = rn.transitivity() C = rn.global_clustering() R = rn.assortativity() print "Average path length:", L print "Transitivity:", T print "Global clustering:", C print "Assortativity:", R
# Run analysis for each realization separately for i in xrange(n_realizations): # Loop over moving windows for j in xrange(t_steps): # Get time series section for current window time_series = values[i,j * delta:j * delta + T_embedded] step_sequence[j] = j * delta + T_embedded / 2 # Prepare recurrence network from original data rec_net = RecurrenceNetwork(time_series.copy(), dim=DIM, tau=TAU, metric=METRIC, normalize=False, silence_level=2, recurrence_rate=RR) # Calculations for original recurrence network results["Transitivity"][i,j] = rec_net.transitivity() results["Average path length"][i,j] = rec_net.average_path_length() #results["Assortativity"][i,j] = rec_net.assortativity() #results["Diameter"][i,j] = rec_net.diameter() # Calculate RQA measures #local_result["Determinism"][j] = rec_net.determinism() #local_result["Laminarity"][j] = rec_net.laminarity() #local_result["Mean diagonal line length"][j] = rec_net.average_diaglength() #local_result["Trapping time"][j] = rec_net.trapping_time() #local_result["Diagonal line entropy"][j] = rec_net.diag_entropy() #local_result["Autocorrelation"][j] = autocorrelation(time_series, # lag=1) #local_result["Mean"][j] = time_series.mean() #local_result["Standard deviation"][j] = time_series.std()
import numpy as np from pyunicorn.timeseries import RecurrenceNetwork x = np.sin(np.linspace(0, 10 * np.pi, 1000)) net = RecurrenceNetwork(x, recurrence_rate=0.05) print(net.transitivity())
# -*- coding: utf-8 -*- """ Created on Wed Aug 19 11:25:43 2015 @author: George """ from __future__ import absolute_import, division, print_function, unicode_literals import numpy as np from pyunicorn.timeseries import RecurrenceNetwork x = np.sin(np.linspace(0, 10 * np.pi, 1000)) net = RecurrenceNetwork(x, recurrence_rate=0.05) print(net.transitivity())