首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用列表理解和群比对Pandas数据进行子集

使用列表理解和群比对Pandas数据进行子集
EN

Stack Overflow用户
提问于 2022-08-28 16:17:05
回答 1查看 55关注 0票数 0

我很难将列表理解和groupby函数应用到Pandas dataframe子集中。

我的dataframe有一个列"patid“,它包含一个病人ID的列表,例如。25001。病人(25001)将有多行。因此,在该示例的基础上,10,000行mmay只能保存10名患者的数据。我想获取列表patidList,并返回一个只有列“patid”中的值与dataframe的patid列中的一个list匹配的行的数据。

我已经使用这段代码细分了dataframe,我知道这在速度上有点瓶颈。在这个示例中,我已经显着地缩小了列表和数据的大小,仅用于练习:

代码语言:javascript
复制
class TestClass():

    def __init__(self):
        dictExample = {
            "patid" : ["25001", "25001", "25001", "999", "999"],
            "interesting_stuff" : ["a","b","c","d","e"]
        }
        self.ioDF = pd.DataFrame(dictExample)

    def someMethod(self):
        patidList = ["25001"]
        reducedDF = self.ioDF.loc[self.ioDF['patid'].isin(patidList)]

testClass = TestClass()
testClass.someMethod()

然而,有人向我建议,如果我使用列表理解和群组功能,我可能会看到速度加快。我不知道该怎么做。请注意:我对这里的速度感兴趣。任何可能的加速都是有用的。我已经在多个核上运行了。即使从一个列表到一个元组的速度有很小的提高,这也是非常有用的。谢谢。

EN

回答 1

Stack Overflow用户

发布于 2022-08-28 16:47:04

试着做以下工作:

代码语言:javascript
复制
Datdaframe[dataframe[“patid”].isin(patidList)]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73520299

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档