Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
#######
ci_test = self.ci_gpdc
# ci_test = self.ci_par_corr
a = 0.
c = .3
T = 500
# Each key refers to a variable and the incoming links are supplied as a
# list of format [((driver, lag), coeff), ...]
links_coeffs = {0: [((0, -1), a)],
1: [((1, -1), a), ((0, -1), c)],
}
numpy.random.seed(42)
data, true_parents_neighbors = pp.var_process(
links_coeffs,
use='inv_inno_cov', T=T)
dataframe = pp.DataFrame(data)
ci_test.set_dataframe(dataframe)
# ci_test.set_tau_max(1)
# X=[(1, -1)]
# Y=[(1, 0)]
# Z=[(0, -1)] + [(1, -tau) for tau in range(1, 2)]
# array, xyz, XYZ = ci_test.get_array(X, Y, Z,
# verbosity=0)]
# ci_test.run_test(X, Y, Z,)
def func(x):
return x * (1. - 4. * x**0 * numpy.exp(-x**2 / 2.))
true_residual = numpy.random.randn(3, T)
def a_sample(request):
# Set the parameters
links_coeffs, time, seed_val = request.param
# Set the random seed
np.random.seed(seed_val)
# Generate the data
data, _ = pp.var_process(links_coeffs, T=time)
# Get the true parents
true_parents = _get_parent_graph(links_coeffs)
return pp.DataFrame(data), true_parents
def gen_data_frame(links_coeffs, time, seed_val):
# Set the random seed
np.random.seed(seed_val)
# Generate the data
data, _ = pp.var_process(links_coeffs, T=time)
# Get the true parents
true_parents = _get_parent_graph(links_coeffs)
return pp.DataFrame(data), true_parents
def gen_process(a_process):
"""
Calls var_process for the process fixtures
"""
# Get the initial values and setup for the decay process
_, init_vals, coefs, expect = a_process
# Deducte the max time from the expected answer shape
max_time = expect.shape[0]
# Generate the data
data, true_parents_neighbors = pp.var_process(coefs,
T=max_time,
initial_values=init_vals,
use="no_noise")
return data, true_parents_neighbors
max_conds_px=max_conds_px,
)
return j, results_in_j
# Example data, here the real dataset can be loaded as a numpy array of shape
# (T, N)
numpy.random.seed(42) # Fix random seed
links_coeffs = {0: [((0, -1), 0.7)],
1: [((1, -1), 0.8), ((0, -1), 0.8)],
2: [((2, -1), 0.5), ((1, -2), 0.5)],
}
T = 500 # time series length
data, true_parents_neighbors = pp.var_process(links_coeffs, T=T)
T, N = data.shape
# Optionally specify variable names
var_names = [r'$X^0$', r'$X^1$', r'$X^2$', r'$X^3$']
# Initialize dataframe object
dataframe = pp.DataFrame(data, var_names=var_names)
# Significance level in condition-selection step. If a list of levels is is
# provided or pc_alpha=None, the optimal pc_alpha is automatically chosen via
# model-selection.
pc_alpha = 0.2 # [0.01, 0.05, 0.1, 0.2, 0.3, 0.4, 0.5]
selected_variables = range(N) #[2] # [2] # [2]
# Maximum time lag
tau_max = 3