我的熊猫数据框中的每一列都代表一个时间序列。我可以逐列找到最小值,最大值,均值和不同的分位数。为了进行一些分析,我需要找到整个数据帧的总体min,max,average和不同分位数。例如,如果数据框如下
a b c
0 1 2 3
1 4 5 6
2 7 8 9
然后,我需要值[1,2,3,4,5,6,7,8,9]的min,max,average,75和95分位数。
您可以Series
通过DataFrame.stack
或DataFrame.melt
然后从所有列创建,然后进行以下处理:
s = df.stack()
print (s)
0 a 1
b 2
c 3
1 a 4
b 5
c 6
2 a 7
b 8
c 9
dtype: int64
s = df.melt()['value']
print (s)
0 1
1 4
2 7
3 2
4 5
5 8
6 3
7 6
8 9
Name: value, dtype: int64
print (s.describe(percentiles=[.75,.95]))
count 9.000000
mean 5.000000
std 2.738613
min 1.000000
50% 5.000000
75% 7.000000
95% 8.600000
max 9.000000
dtype: float64
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句