在Python中根据值查找Pandas数据框列

埃德斯

我在Python中有2个Pandas Dataframe。他们来了:

import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.rand(10,3),columns=list('ABC'))
df2 = pd.DataFrame(np.random.rand(10,3),columns=list('ABC'))
df['A'] = 1
print df
print df2

   A         B         C
0  1  0.333141  0.803991
1  1  0.043958  0.582038
2  1  0.833433  0.782856
3  1  0.722592  0.237912
4  1  0.634979  0.664208
5  1  0.809748  0.889524
6  1  0.110342  0.650617
7  1  0.035417  0.251089
8  1  0.481492  0.128792
9  1  0.190135  0.213608

          A         B         C
0  0.897373  0.599721  0.361668
1  0.495024  0.471351  0.090395
2  0.651174  0.621328  0.721208
3  0.253459  0.567619  0.104370
4  0.357627  0.616717  0.775327
5  0.164323  0.716166  0.740565
6  0.841509  0.464837  0.398952
7  0.398680  0.186555  0.293076
8  0.298785  0.784237  0.704184
9  0.124763  0.384852  0.307361

如您所见df,只有一列只有1。

我需要执行以下操作:

  1. 在所有行df包含1的数据框()中查找列的名称
  2. 从中删除该列 df
  3. 从中删除该SAMEdf2

我想得到这个:

          B         C
0  0.333141  0.803991
1  0.043958  0.582038
2  0.833433  0.782856
3  0.722592  0.237912
4  0.634979  0.664208
5  0.809748  0.889524
6  0.110342  0.650617
7  0.035417  0.251089
8  0.481492  0.128792
9  0.190135  0.213608

          B         C
0  0.599721  0.361668
1  0.471351  0.090395
2  0.621328  0.721208
3  0.567619  0.104370
4  0.616717  0.775327
5  0.716166  0.740565
6  0.464837  0.398952
7  0.186555  0.293076
8  0.784237  0.704184
9  0.384852  0.307361

有没有办法做到这一点?

埃德·楚姆

我建议all在整个df上使用布尔条件,而不是使用apply

In [122]:
col_to_drop = df.columns[(df==1).all()]
col_to_drop

Out[122]:
Index(['A'], dtype='object')

In [123]:    
df2.drop(col_to_drop, axis=1)
Out[123]:
          B         C
0  0.507605  0.134758
1  0.777054  0.285220
2  0.121124  0.430874
3  0.422746  0.775676
4  0.563303  0.659942
5  0.582580  0.437603
6  0.221917  0.339737
7  0.634779  0.172416
8  0.703110  0.730759
9  0.426673  0.923138

all布尔比较的调用返回每列具有布尔值的序列:

In [124]:
(df==1).all()

Out[124]:
A     True
B    False
C    False
dtype: bool

然后,您可以使用此方法屏蔽列,以返回您希望从中删除的列,df2如上所示。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Python中根据值查找Pandas数据框列

来自分类Dev

Python Pandas 根据同一数据框中的多个列值查找列值

来自分类Dev

根据索引增量Python Pandas数据框查找和添加缺少的列值

来自分类Dev

根据其他列中的值在python 3(pandas)数据框中创建新列

来自分类Dev

Python:Pandas-根据列值分隔数据框

来自分类Dev

根据行索引值从pandas数据框列中求和

来自分类Dev

根据pandas数据框中的多个列值选择行

来自分类Dev

根据pandas数据框中的列值插入行

来自分类Dev

根据行索引值从pandas数据框列中求和

来自分类Dev

在列相同的pandas数据框中查找索引值

来自分类Dev

在pandas数据框列中查找非数字值

来自分类Dev

在列相同的pandas数据框中查找索引值

来自分类Dev

根据其他列在python pandas数据框中创建子列表的最大值

来自分类Dev

Python:如何在以分号分隔的Pandas数据框的列中查找值?

来自分类Dev

Python Pandas在数据框中查找值而与列无关

来自分类Dev

根据不同列python数据框中的空值过滤数据框列中的值

来自分类Dev

根据数据框Python中的列条件划分行值

来自分类Dev

使用python在单独的数据框中查找的值来计算新数据框列中的值

来自分类Dev

根据一列中的特定值在熊猫数据框中查找时间增量

来自分类Dev

在 Pandas/Python 中合并数据框中的列值

来自分类Dev

根据不同列的值对数据框执行查找

来自分类Dev

在数据框中查找值,并在pandas的新列中添加优先列值

来自分类Dev

根据另一列中的值对pandas数据框中的列进行归一化

来自分类Dev

根据列表或另一列中的值在Pandas数据框中动态选择列

来自分类Dev

根据另一列中的值对pandas数据框中的列进行归一化

来自分类Dev

根据查找表替换数据框中的值

来自分类Dev

根据Pandas数据框中的其他三列更改一列的值

来自分类Dev

根据Pandas数据框中的其他三列更改一列的值

来自分类Dev

根据列值转置数据框列-Pandas

Related 相关文章

  1. 1

    在Python中根据值查找Pandas数据框列

  2. 2

    Python Pandas 根据同一数据框中的多个列值查找列值

  3. 3

    根据索引增量Python Pandas数据框查找和添加缺少的列值

  4. 4

    根据其他列中的值在python 3(pandas)数据框中创建新列

  5. 5

    Python:Pandas-根据列值分隔数据框

  6. 6

    根据行索引值从pandas数据框列中求和

  7. 7

    根据pandas数据框中的多个列值选择行

  8. 8

    根据pandas数据框中的列值插入行

  9. 9

    根据行索引值从pandas数据框列中求和

  10. 10

    在列相同的pandas数据框中查找索引值

  11. 11

    在pandas数据框列中查找非数字值

  12. 12

    在列相同的pandas数据框中查找索引值

  13. 13

    根据其他列在python pandas数据框中创建子列表的最大值

  14. 14

    Python:如何在以分号分隔的Pandas数据框的列中查找值?

  15. 15

    Python Pandas在数据框中查找值而与列无关

  16. 16

    根据不同列python数据框中的空值过滤数据框列中的值

  17. 17

    根据数据框Python中的列条件划分行值

  18. 18

    使用python在单独的数据框中查找的值来计算新数据框列中的值

  19. 19

    根据一列中的特定值在熊猫数据框中查找时间增量

  20. 20

    在 Pandas/Python 中合并数据框中的列值

  21. 21

    根据不同列的值对数据框执行查找

  22. 22

    在数据框中查找值,并在pandas的新列中添加优先列值

  23. 23

    根据另一列中的值对pandas数据框中的列进行归一化

  24. 24

    根据列表或另一列中的值在Pandas数据框中动态选择列

  25. 25

    根据另一列中的值对pandas数据框中的列进行归一化

  26. 26

    根据查找表替换数据框中的值

  27. 27

    根据Pandas数据框中的其他三列更改一列的值

  28. 28

    根据Pandas数据框中的其他三列更改一列的值

  29. 29

    根据列值转置数据框列-Pandas

热门标签

归档