Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Pandas groupby将自定义功能应用于每个组_Python_Pandas_Sum_Pandas Groupby - Fatal编程技术网

Python Pandas groupby将自定义功能应用于每个组

Python Pandas groupby将自定义功能应用于每个组,python,pandas,sum,pandas-groupby,Python,Pandas,Sum,Pandas Groupby,我有一个多栏的表格。对于其中一列AC,我需要将其替换为结果AC,如下表所示 该函数有一个伪代码,如下所示: For each unique address: If # of unique(AC) < Value in column B AND len(Top 1 (unique(AC))) != len(Top 2 (unique(AC))): return mode(air_conditioning) Else For each unique(AC), calculate su

我有一个多栏的表格。对于其中一列AC,我需要将其替换为结果AC,如下表所示

该函数有一个伪代码,如下所示:

For each unique address:
If 
# of unique(AC) < Value in column B AND 
len(Top 1 (unique(AC))) != len(Top 2 (unique(AC))):
return mode(air_conditioning) 

Else
For each unique(AC), calculate sum(area)
If Top 1 (sum(area)) > Top 2 (SUM(area)):
return air_conditioning which has Top 1 (SUM(building_area))

Else
For each unique(AC), SUM(value)
return air_conditioning with Top 1 (SUM(value))
 
对于每个唯一地址:
如果
#B列和B列中唯一(AC)<值
len(前1名(唯一(AC))!=len(前2名(唯一(AC)):
返回模式(空调)
其他的
对于每个唯一(AC),计算总和(面积)
如果Top 1(总和(面积))>Top 2(总和(面积)):
回风空调,其具有顶部1(总和(建筑面积))
其他的
对于每个唯一(AC),求和(值)
带顶部1的回风空调(总和(值))

Groupby,transfrom sum应该可以

df['col2']=df.groupby('col1')['col2'].transform('sum')

是否足够相似?啊,Col3没有变化,必须保持不变。请参阅我的编辑。我的意思是
col2
我们可以在Transform中使用自定义/自行创建的函数吗?我已经编辑了这个问题。我在想办法。你能不能发一个新问题。这将是理想的事情,因为有一个从原来的变化。