微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – 查找行的匹配值并单独提取它们,而不指定匹配值(键)

我试图在下面的数据框中提取具有匹配Sample_ID的行:

df1 = pd.DataFrame([[1, 1.0, 2.3,0.2,0.53], [2, 3.35, 2.0,0.2,0.65], [2,3.4, 
               2.0,0.25,0.55], [3,3.4,2.0,0.25,0.55]],
               columns=["Sample_ID", "NaX", "NaU","OC","EC"])\
               .set_index('Sample_ID') 

在上面的数据帧df1中,我想只得到Sample_ID为“2”的行.有没有办法在不指定匹配值的情况下执行此操作,关键是什么?

我要找的结果是:

       NaX NaU OC  EC
Sample_ID                  
   2   3.35    2.0 0.20    0.65 
   2   3.40    2.0 0.25    0.55

感谢您阅读本文!

解决方法:

使用.loc

df.loc[2]

输出

            NaX  NaU    OC    EC
Sample_ID                       
2          3.35  2.0  0.20  0.65
2          3.40  2.0  0.25  0.55

要回答评论问题,您可以创建一个字典并存储这样的组:

list_of_df = {}
for n,g in df1.groupby(level=0):
    list_of_df[n] = g

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐