从python pandas中的长序列数据计算概率

时间:2015-07-22 09:49:49

标签: pandas dataframe probability

我的数据范围从19到49.如何计算数据发生的概率在25到40之间?

function encodeFunc($value) {
    return "\"$value\"";
}

fputcsv($handler, array_map(encodeFunc, $array), ',', chr(0));

1 个答案:

答案 0 :(得分:3)

最简单的方法是使用介于25和40之间的值的百分比。

如果s是您提供给我们的pandas.Series

In [1]: s.head()
Out[1]:
0    46.587628
1    30.504777
2    27.419525
3    47.981573
4    44.554256
Name: 0, dtype: float64

In [2]: # calculate number of values between 25 and 40 and divide by total count
s.between(25,40).sum()/float(s.count())
Out[2]: 0.3599

否则,它需要尝试查找您的数据可能遵循的分布(从您提供的数据,这可能只是您的数据的一小部分样本,它似乎不遵循我知道的任何分发... ),测试它是否实际遵循您认为遵循的分布(使用Kolmogorov-Smirnov测试或类似的其他),然后您可以使用该分布来计算概率等。