Pandas:如何在稀疏选项卡中选择非零值的列

2024-10-02 14:21:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个包含2000列的稀疏表,我想选择一些特定的行及其非零值。我该怎么做?在

    id       name   e1   e2   e3   e4 . . e550 . . e1200 .   e1760. . e2000
    1      engine1   0   0    0    2322   1300               140       0
    2      engine2   0   0  1230   0        0        2100              0
    .
    .
    .
    998000


df[df.name==engine2 & ? ]
    id    name      e3       e1200
    2   engine2    1230       2100   

以及

^{pr2}$

Tags: nameiddfe3e2e4pr2e1
1条回答
网友
1楼 · 发布于 2024-10-02 14:21:49

您可以过滤两次-第一行按掩码m1过滤,然后按m2过滤列。 上次使用^{}

m1 = (df['name'] == 'engine2')
m2 = (df[m1] != 0).all()

print (df.loc[m1,m2])
   id     name    e3  e1200
1   2  engine2  1230   2100

相关问题 更多 >