如何解决无法将自定义函数二重奏应用于“ DataFrame”对象是可变的,因此不能进行哈希处理
我想以这种方式应用功能
def create_output_column(myDf):
res = myDf.transpose()
return res
df.groupby('id').apply(create_output_column(df))
我不知道为什么会收到错误消息
TypeError: 'DataFrame' objects are mutable,thus they cannot be hashed
当然,我知道我可以更轻松地进行转置,但这只是一个更复杂函数的示例,但即使在这个简单示例中,我仍然会出错。有人可以在这里帮助我吗?我知道一个数据框无法进行哈希处理,但是我什至看不到要在何处进行哈希处理。
解决方法
import pandas as pd
d = {'id': [1,2,1],'col2': [3,4,5]}
df = pd.DataFrame(data=d)
df
示例数据框
id col2
0 1 3
1 2 4
2 1 5
GroupBy(我对组应用了最小值)
df2 = df.groupby('id')['id','col2'].min()
df2
中间数据
id col2
id
1 1 3
2 2 4
应用自定义功能
df = create_output_column(df2)
df
结果:
id 1 2
_______________
id 1 2
col2 3 4
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。