Pandas DataFrame中的“对象索引值”是什么?

pjngdqdw  于 2023-02-17  发布在  其他
关注(0)|答案(1)|浏览(107)

文档here中写道,如果函数作为by参数传递给groupby函数,则
在对象索引的每个值上调用它
value of the object’s index在这里是什么意思?这个函数会接收每一行每一列的所有值吗?

s4n0splo

s4n0splo1#

这意味着对于函数fgroupby将运行f(df.index[0])f(df.index[1])等。
下面是一个使用示例:

df = pd.DataFrame({'col': list('ABCDEF')})
#   col
# 0   A
# 1   B
# 2   C
# 3   D
# 4   E
# 5   F

out = df.groupby(lambda x: x%2).agg(''.join)
#    col
# 0  ACE
# 1  BDF

另一个:

df = pd.DataFrame({'col': list('ABCDEF')},
                  index=['x', 'X', 'y', 'z', 'Y', 'Z'])
#   col
# x   A
# X   B
# y   C
# z   D
# Y   E
# Z   F

out = df.groupby(str.upper).agg(''.join)
#   col
# X  AB
# Y  CE
# Z  DF

相关问题