#python #distribution #probability-density
Вопрос:
У меня есть две переменные x1 и x2, которые равномерно распределены в пространстве журналов от 1 до 10000.
import numpy as np
sample_size=1000000
variables=25
x_min=1
x_max=10000
x1_start = np.random.rand(variables, sample_size)
x1_log = x1_start*(np.log(x_max)-np.log(x_min)) np.log(x_min)
x1 = np.exp(x1_log)
x2_start = np.random.rand(variables, sample_size)
x2_log = x2_start*(np.log(x_max)-np.log(x_min)) np.log(x_min)
x2 = np.exp(x2_log)
Я могу ввести критерии x1 > 10*x2 и избавиться от каждого набора образцов, который не соответствует этим критериям. Это можно сделать, зациклившись на размере выборки/переменных для обоих массивов и сравнив значения каждого соответствующего элемента в x1 и x2 (при сравнении одного набора образцов, если какая-либо из переменных не соответствует критериям, весь набор отбрасывается).
Однако эта фильтрация позволит избавиться примерно от 95% начального размера выборки, что в моем случае является проблемой. Поэтому я хочу создать дистрибутивы для x1 и x2, которые полностью удовлетворяют этим критериям с самого начала, чтобы мне не нужно было фильтровать позже. Кто-нибудь может мне помочь с этим?
Спасибо!