使用 Python 按类别计算标准差

数据挖掘 Python
2021-09-28 01:03:56

我有一个包含分数和类别的数据集,我想计算每个类别的这些分数的标准偏差。数据看起来像这样:

Category    Score    
AAAA        1
AAAA        3
AAAA        1
BBBB        1
BBBB        100
BBBB        159
CCCC        -10
CCCC        9

然后我想要的是每个类别的标准偏差。我知道使用 numpy 我可以使用以下内容:

numpy.std(a)

但是我能找到的示例仅与列表有关,而不是与 DataFame 中的一系列不同类别有关。

2个回答

您可以使用 pandas 轻松完成此操作:

import pandas as pd
import numpy as np

df = pd.DataFrame([["AA", 1], ["AA", 3], ["BB", 3], ["CC", 5], ["BB", 2], ["AA", -1]])
df.columns = ["Category", "Score"]
print df.groupby("Category").apply(np.std)

我的输入数据略有不同。我有不止一列,所以如何给出命令来选择一个特定的列来计算标准偏差。