Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/361.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 如果groupby对象中的列值为min,则返回具有True的pandas系列的更快方法,否则返回False_Python_Pandas_Pandas Groupby - Fatal编程技术网

Python 如果groupby对象中的列值为min,则返回具有True的pandas系列的更快方法,否则返回False

Python 如果groupby对象中的列值为min,则返回具有True的pandas系列的更快方法,否则返回False,python,pandas,pandas-groupby,Python,Pandas,Pandas Groupby,我有一个pandas df,我试图返回一个pandas序列,其中每一行填充bools,如果值是其各自groupby对象中的min,则为True,否则为False 使用transform可以很好地工作 df.groupby(grouping_column)[value_column].transform(lambda x:x==min(x)) 但速度慢得令人痛苦。我已经看过了其他groupby方法的文档和非文档,它们似乎可以解决这个问题。有人有什么想法吗?也许先排序first(),然后与组中的所有

我有一个pandas df,我试图返回一个pandas序列,其中每一行填充bools,如果值是其各自groupby对象中的min,则为True,否则为False

使用transform可以很好地工作

df.groupby(grouping_column)[value_column].transform(lambda x:x==min(x))


但速度慢得令人痛苦。我已经看过了其他groupby方法的文档和非文档,它们似乎可以解决这个问题。有人有什么想法吗?也许先排序
first()
,然后与组中的所有其他条目进行比较?顺便说一句,我想保留与原始
df
中相同的索引。谢谢

df['value\u column']==df.groupby(grouping\u column)['value\u column'].transform('min')
应该快一点。哇!速度快了400倍。这纯粹是因为我最初使用的
lambda
不再使用python引擎吗?简言之:是的!!!