如果我有随机样本数据:
X=np.random.random(100)*100
我需要得到值X_i,CDF = 34%或者其他什么。我现在能够思考的唯一方法是使用反向CDF。我认为百分位数相当,但有人告诉我它接近但不准确。
答案 0 :(得分:2)
这应该为您提供X
的索引,其中cdf为0.34:
X=np.random.random(100)*100
cdf_frac_to_find = 0.34
cdf = np.cumsum(X)/np.sum(X) #take the cumulative sum of x and normalize so that it's max value is 1
X_index = np.argmin(np.abs(cdf-cdf_pct_to_find))
X_index
#out: 32 -- note that this will likely change because you're generating random numbers for X.