【发布时间】:2021-07-28 17:17:43
【问题描述】:
目标
-
我有一个带有浮点和对象类型的 pandas 数据框。
-
我想按“名称”列对数据框进行分组
groupped = df.groupby(["name"]) -
比聚合所有其他列。
-
我将某些列的浮点值加在一起
-
但我也有“对象类型”,目标是只保留 1 个对象类型,例如:第一个。他们是一样的。所以我尝试使用 min 但它不起作用但我找不到任何其他适用于对象类型的函数。
aggregated = groupped.agg({
'name' : ['min'],
'id' : ['min'],
'date' : ['min'],
'number_one' : ['sum'],
'type' : ['min'],
'number_two' : ['sum'],
})
错误
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-102-3594b7bd0c31> in <module>
9 'number_one' : ['sum'],
10 'type' : ['min'],
---> 11 'number_two' : ['sum'],
12 })
13
...
TypeError: '<=' not supported between instances of 'str' and 'float'
已经尝试过
- pandas dataframe aggregate calculation
- Filtering Pandas Dataframe Aggregate
- Aggregating in panda dataframe
- Pandas - DataFrame aggregate behaving oddly
- Pandas Dataframe aggregating Statistics
- python pandas dataframe aggregate groupby
- Conditionally Aggregating Pandas DataFrame
- https://pandas.pydata.org/docs/reference/api/pandas.DataFrame.agg.html
【问题讨论】:
标签: python python-3.x pandas group-by aggregate