[英]Pandas series mean and standard deviation
我有一個清單:
data = [
{'A': [2.0, 3.0, 4.0, 5.0, 6.0], 'B':[27.0, 28.0, 29.0, 30.0], 'C': ['lic1'],
'D': ['soy1'], 'E': ['foo1']},
{'A': [7.0, 11.0, 90.0, 43.0, 87.0], 'B':[27.0, 28.0, 29.0, 30.0], 'C': ['lic1'],
'D': ['soy1'], 'E': ['foo1']},
# ... etc
]
“A”的數據是熊貓系列。 我想計算'A'中數據的平均值和標准差(例如,A有幾個記錄):(均值=(2.0 + 3.0 + 4.0 + 5.0 + 6.0 + 7.0 + 11.0 + 90.0 + 43.0 + 87.0)/ LEN(A)= 25.8)
您可以將list comprehension
與concat
,然后使用mean
或std
。
為了轉換為float
( int
)添加astype
,如果仍然有問題需要帶參數errors='coerce'
to_numeric
。
s = pd.concat([pd.Series(x['A']) for x in data]).astype(float)
print (s)
0 2.0
1 3.0
2 4.0
3 5.0
4 6.0
0 7.0
1 11.0
2 90.0
3 43.0
4 87.0
dtype: float64
print (s.mean())
25.8
print (s.std())
35.15299892375234
另一種方案:
from itertools import chain
s = pd.Series(list(chain.from_iterable([x['A'] for x in data]))).astype(float)
print (s)
0 2.0
1 3.0
2 4.0
3 5.0
4 6.0
5 7.0
6 11.0
7 90.0
8 43.0
9 87.0
dtype: float64
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.