熊猫表,对重复数据删除的列值运行.apply()

嗨,我在熊猫中有一张桌子(请参见屏幕截图以提取一部分-它有很多行),希望提取出唯一的'author_id',然后运行一个函数以提取与每个ID相关的详细信息。

我通过以下方式提取唯一ID的列表:

unique_ids = df['author_id'].unique()

然后,我尝试运行:

df['author_id'].unique().apply(some_function)

其中“ some_function”采用“ author_id”并返回一些信息。但是我得到了错误:

AttributeError: 'numpy.ndarray' object has no attribute 'apply'

因此,我诉诸于:

[unique_ids中author_id的some_function(author_id)]

哪个可行,但不是实现此目的的高效/矢量化方法。

用矢量化方式进行此操作的方式是什么?

http://img4.mukewang.com/60628fd80001abc803470165.jpg

森林海
浏览 165回答 2
2回答

陪伴而非守候

唯一函数的输出是一个numpy数组,它不提供apply方法。您可以Series通过该数组创建一个,然后应用您的函数:pd.Series(df['author_id'].unique()).apply(some_function)

白猪掌柜的

我认为您想执行以下操作groupby:g = df.groupby('author_id')g.apply(some_function)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python