我想用
pivot_table
在每个单元格中显示列的任意值。例如,给定
DataFrame
这样地:
df = pd.DataFrame({'x': ['x1', 'x1', 'x2'],
'y': ['a', 'b', 'c']})
计算
y
对于每个值
x
以下内容:
df.pivot_table(index='x', values='y', aggfunc=len)
y
x
x1 2
x2 1
所以代替
[2, 1]
,我想
['a', 'c']
或
['b', 'c']
是的。
我试过这些方法,但都会产生错误(
notebook
)以下内容:
df.pivot_table(index='x', values='y', aggfunc=sample)
df.pivot_table(index='x', values='y', aggfunc=head)
df.pivot_table(index='x', values='y', aggfunc=lambda x: x[0])
每
https://stackoverflow.com/a/38982172/1840471
,另一种方法是使用
groupby
和
agg
,在这种情况下,这将产生所需的结果:
df.groupby(['x']).y.agg('head')
不过,我想用
透视表
因为我的完整用例涉及获取行和列中的值。