我有以下 pandas DataFrame dt:
auftragskennung sku artikel_bezeichnung summen_netto system_created
0 14 200182 Product 1 -16.64 2015-05-12 19:55:16
1 14 730293 Product 2 -4.16 2015-05-12 19:55:16
2 3 720933 Product 3 0.00 2014-03-25 12:12:44
3 3 192042 Product 4 19.95 2014-03-25 12:12:45
4 3 423902 Product 5 23.88 2014-03-25 12:12:45
然后我执行此命令以获取 sku 订购的最畅销产品:
topseller = dt.groupby("sku").agg({"summen_netto": np.sum}).sort("summen_netto", ascending=False)
返回的内容如下:
summen_netto
sku
730293 55622.24
720933 35603.99
192042 27698.99
423902 26726.28
734630 25730.21
740353 22798.14
这就是我想要的,但我现在如何访问 sku 列? topseller["sku"]
不起作用。它总是给我一个 KeyError。
我希望能够做到这一点:
topseller["sku"]["730293"]
然后返回 55622.24
最佳答案
sku 现在是列,因此您需要使用 loc
执行标签选择:
In [7]:
topseller.loc[730293]
Out[7]:
summen_netto -4.16
Name: 730293, dtype: float64
您可以在这里确认:
In [8]:
topseller.index
Out[8]:
Int64Index([423902, 192042, 720933, 730293, 200182], dtype='int64', name='sku')
关于python - 如何访问groupby中的列? - Pandas ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30272708/