【发布时间】:2021-11-20 16:39:47
【问题描述】:
我想对具有大量列的数据框进行分组,但仅将函数(sum、mean 等)应用于两列并获取剩余列的第一个值。我怎样才能做到这一点?在引用的帖子中,以下代码有效,但是当我将“esle x.mean()”替换为“esle x.first()”时,它不再起作用了。
df = df.groupby('id').agg(lambda x : x.count() if x.name in ['var1','var2'] else x.mean())
有什么想法吗?
【问题讨论】:
-
使用
x.iat[0]获取第一个值。 first 做了一件非常不同的事情。