python中dataframe 判断是否存在,查看DataFrame中是否存在值

In Python to check if a value is in a list you can simply do the following:

>>>9 in [1,2,3,6,9]

True

I would like to do the same for a Pandas DataFrame but unfortunately Pandas does not recognise that notation:

>>>import pandas as pd

>>>df = pd.DataFrame([[1,2,3,4],[5,6,7,8]],columns=["a","b","c","d"])

a b c d

0 1 2 3 4

1 5 6 7 8

>>>7 in df

False

How would I achieve this using Pandas DataFrame without iterating through each column/row or anything complicated?

解决方案

Basically you have to check the matrix without the schema, so:

7 in df.values

x in df checks if x is in the columns:

for x in df:

print x,

out: a b c d

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 判断一个DataFrame是否存在inf可以通过DataFrame的isinf()方法来实现。isinf()方法会返回一个DataFrame,其DataFrame的每个元素为inf的位置会显式地标记为True,否则为False。 具体实现步骤如下: 1. 导入必要的库:pandas、numpy ```python import pandas as pd import numpy as np ``` 2. 创建一个包含inf元素的DataFrame。 ```python df = pd.DataFrame({ 'a': [1, np.Inf, 2], 'b': [3, 4, np.Inf], 'c': [5, 6, 7] }) ``` 3. 使用isinf()函数检查DataFrame是否存在inf。 ```python df.isin([np.inf, -np.inf]).any().any() ``` 这行代码的具体含义是:检查DataFrame是否存在inf或者-inf,如果存在则返回True,否则返回False。 完整代码如下: ```python import pandas as pd import numpy as np df = pd.DataFrame({ 'a': [1, np.Inf, 2], 'b': [3, 4, np.Inf], 'c': [5, 6, 7] }) if df.isin([np.inf, -np.inf]).any().any(): print("DataFrame存在inf") else: print("DataFrame存在inf") ``` 执行上述代码输出的结果为:DataFrame存在inf。 ### 回答2: 在Python判断DataFrame是否存在无限或缺失(NaN)的方法很多,这里介绍几种较为常见的方式: 1. 使用pandas的isinf()和isnull()函数 pandas提供了isinf()和isnull()函数,用于判断DataFrame是否存在无限或缺失。isinf()函数返回一个布尔型Series,指示每个元素是否为无穷大,而isnull()函数则返回一个布尔型Series,指示每个元素是否为缺失。我们可以使用这两个函数来判断是否存在无限或缺失,如下所示: ```python import pandas as pd import numpy as np df = pd.DataFrame({'A':[1,np.inf,3],'B':[4,5,np.nan],'C':[6,7,8]}) # 判断df是否存在无穷大或缺失 print(df.isinf().values.any() or df.isnull().values.any()) ``` 2. 使用numpy的isinf()和isnan()函数 numpy也提供了isinf()和isnan()函数,用于判断一个数组是否存在无限或缺失。我们可以将DataFrame转换为numpy数组后使用这两个函数,如下所示: ```python import pandas as pd import numpy as np df = pd.DataFrame({'A':[1,np.inf,3],'B':[4,5,np.nan],'C':[6,7,8]}) # 判断df是否存在无穷大或缺失 print(np.isinf(df.values).any() or np.isnan(df.values).any()) ``` 3. 使用any()函数判断 我们也可以使用DataFrame或Series的any()函数,判断是否存在无穷大或缺失。any()函数会将数据所有非零元素视为True,将所有零元素视为False,因此如果DataFrame存在无穷大或缺失,则any()函数返回False。如下所示: ```python import pandas as pd import numpy as np df = pd.DataFrame({'A':[1,np.inf,3],'B':[4,5,np.nan],'C':[6,7,8]}) # 判断df是否存在无穷大或缺失 print(df.any().any()) ``` 综上所述,我们可以使用pandas的isinf()和isnull()函数,numpy的isinf()和isnan()函数,以及DataFrame或Series的any()函数,来判断DataFrame是否存在无限或缺失。 ### 回答3: 在 Python ,我们可以使用 NumPy 库来判断 DataFrame 是否存在 inf 。首先,我们需要导入 NumPy 和 Pandas 库,然后使用 DataFrame 的 isin() 方法和 numpy.inf 常量来判断。 以下是一个示例代码: ```python import pandas as pd import numpy as np # 创建一个 DataFrame df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, np.inf, 6], 'C': [7, 8, 9]}) # 判断 DataFrame 是否存在 inf if np.isinf(df.values).any(): print('DataFrame 存在 inf') else: print('DataFrame 存在 inf') ``` 在上面的示例,我们首先使用 Pandas 创建了一个 DataFrame,并将其一个设置为 np.inf。接下来,我们使用 np.isinf() 方法和 DataFrame 的 values 属性来判断 DataFrame 是否存在 inf 。该方法会返回一个布尔数组,其 True 表示该元素是 inf,False 表示不是。 然后我们使用 .any() 函数判断在布尔数组是否存在 True,即 DataFrame 是否存在 inf。如果存在,则输出“DataFrame 存在 inf”,否则输出“DataFrame 存在 inf”。 总结一下,要判断 DataFrame 是否存在 inf ,我们可以使用 Python 的 NumPy 库 and Pandas 库的组合。使用 NumPy 的 isinf() 方法来检测 DataFrame 是否为 inf,然后使用 any() 函数来判断是否有 True 即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值