Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >用Pandas测试数据帧值的相等性

用Pandas测试数据帧值的相等性
EN

Stack Overflow用户
提问于 2021-03-08 04:54:13
回答 1查看 45关注 0票数 0

当这样做时:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import pandas as pd
df = pd.DataFrame({'A': ['1.0', '1.1', '1.2', '1.3'], 'B': ['a', 'b', 'c', 'd']})

row1 = df[df['A'] == '1.1']

if row1['B'] == 'b':  
    print('hello')

我们得到:

ValueError:系列的真值是不明确的。使用a.empty、a.bool()、a.item()、a.any()或a.all()。

为什么是模棱两可的?

如果我使用any()all(),确实可以解决这个问题,但在这里,我不太愿意添加anyall,而不完全理解为什么需要添加。通常,当我们有一个布尔值列表时,anyall是必需的,但是这里只有一个这样的布尔值。

TL;DR:如何用Pandas测试一个数据的相等值?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-08 04:56:45

我想你可以检查一下

熊猫遵循NumPy的惯例,当你试图将某物转化为嘘声时,就会产生错误。这种情况发生在if-语句或使用布尔操作时: and,或,而不是.以下代码的结果尚不清楚:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if pd.Series([False, True, False]):
    pass

它应该是真因为它不是零长度,或假因为有假值?目前还不清楚,因此,熊猫反而会饲养一只ValueError:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if pd.Series([False, True, False]):
    print("I was true")

回溯

ValueError:数组的真值是不明确的。使用a.empty、a.any()或a.all()。

您需要显式地选择您想要对DataFrame做什么,例如使用any()、all()或空()。或者,如果熊猫对象为None,您可能需要比较:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if pd.Series([False, True, False]) is not None:
    print("I was not None")

我不是一个人

下面是如何检查其中任何一个值是否为True:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
 if pd.Series([False, True, False]).any():
    print("I am any")
I am any

要在布尔上下文中计算单元素熊猫对象,请使用bool()方法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
pd.Series([True]).bool()
True

pd.Series([False]).bool()
False

pd.DataFrame([[True]]).bool()
True

pd.DataFrame([[False]]).bool()
False
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66530235

复制
相关文章
用Pandas处理缺失值
在数据表或 DataFrame 中有很多识别缺失值的方法。一般情况下可以分为两种:一种方法是通过一个覆盖全局的掩码表示缺失值, 另一种方法是用一个标签值(sentinel value) 表示缺失值。在掩码方法中, 掩码可能是一个与原数组维度相同的完整布尔类型数组, 也可能是用一个比特(0 或 1) 表示有缺失值的局部状态。在标签方法中, 标签值可能是具体的数据(例如用 -9999 表示缺失的整数) , 也可能是些极少出现的形式。另外, 标签值还可能是更全局的值, 比如用 NaN(不是一个数) 表示缺失的浮点数。
用户3577892
2020/06/10
2.8K0
C# - 为值类型重定义相等性
重写object.Equals()方法,是避免了反射,因为System.ValueType里面对object.Equals()方法的重写实现如下:
solenovex
2019/05/25
1.2K0
C#相等性 - “==”
在刚学C#的时候,我以为C#里的==和.NET里的object.Equals()方法是一样的,就是一个语法糖而已。其实它们的底层机制是不一样的,只不过它们给出的结果在大多数情况下恰好相同。
solenovex
2019/05/25
7320
Integer 值判断相等
通过案例发现,值为127不管是 Integer 还是 String 类型,== 和 equals 都能比较成功。128与类型无关,与比较的方法有关。
Jacob丶
2020/08/05
1.6K0
用 Style 方法提高 Pandas 数据的颜值
Pandas的style用法在大多数教程中见的比较少,它主要是用来美化DataFrame和Series的输出,能够更加直观地显示数据结果。
Python数据科学
2020/05/25
2.1K0
用 Style 方法提高 Pandas 数据的颜值
JavaScript 中的相等性判断
简而言之,在比较两件事情时,双等号将执行类型转换; 三等号将进行相同的比较,而不进行类型转换 (如果类型不同, 只是总会返回 false ); 而Object.is的行为方式与三等号相同,但是对于NaN和-0和+0进行特殊处理,所以最后两个不相同,而Object.is(NaN,NaN)将为 true。(通常使用双等号或三等号将NaN与NaN进行比较,结果为false,因为IEEE 754如是说.) 请注意,所有这些之间的区别都与其处理原语有关; 这三个运算符的原语中,没有一个会比较两个变量是否结构上概念类似。对于任意两个不同的非原始对象,即便他们有相同的结构, 以上三个运算符都会计算得到 false 。
用户7293182
2022/01/17
9900
JavaScript 中的相等性判断
pandas处理缺失值的函数_pandas填充缺失值
df.dropna()函数用于删除dataframe数据中的缺失数据,即 删除NaN数据.
全栈程序员站长
2022/09/30
2K0
LeetCode 2057. 值相等的最小索引
给你一个下标从 0 开始的整数数组 nums ,返回 nums 中满足 i mod 10 == nums[i] 的最小下标 i ;如果不存在这样的下标,返回 -1 。
Michael阿明
2022/01/07
5330
Java规则:原子类的相等性判断
Java的规则S2204规定,对于Java并发库定义的诸如AtomicInteger、AtomicLong等原子类,不能使用equals()方法测试其值是否相等。
张逸
2023/03/23
1.2K0
Java规则:原子类的相等性判断
js原始值与对象的相等比较
let a = []; let b = “0”; // 1 console.log(a0); // true // 2 console.log(a!a);// true // 3 console.log(ab); // false // 4 console.log(b0); // true
马克社区
2022/07/01
2.2K0
PANDAs_pandas去除缺失值
该函数主要用于滤除缺失数据。 如果是Series,则返回一个仅含非空数据和索引值的Series,默认丢弃含有缺失值的行。
全栈程序员站长
2022/10/02
4400
手把手教你用pandas处理缺失值
导读:在进行数据分析和建模的过程中,大量的时间花在数据准备上:加载、清理、转换和重新排列。本文将讨论用于缺失值处理的工具。
IT阅读排行榜
2021/02/22
2.8K0
手把手教你用pandas处理缺失值
pandas dropna删除有空值的行_pandas中导出缺失值
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
全栈程序员站长
2022/09/28
2.2K0
mybatis test标签判断值是否相等
但是在实际使用过程中可能会需要对某个输入的值做具体判断,然后根据输入参数的值进行分支处理
johnhuster的分享
2022/03/29
1.3K0
2019-2-24-元组的相等性比较
元组作为轻量级的数据结构,在c#中具有广泛的引用。但是元组的比较一直以来都是对于成员的依次比较。好在C#7.3开始,引入了元素的相等性比较,让元组的易用性有了大幅提升。
黄腾霄
2020/06/10
7230
用ChatGPT生成测试数据
在之前的文章 用ChatGPT写一个数据采集程序 中,我们演示了如何用 ChatGPT 辅助编写代码。
Crossin先生
2023/06/11
3960
pandas 处理缺失值[dropna、drop、fillna][通俗易懂]
对于dropna和fillna,dataframe和series都有,在这主要讲datafame的
全栈程序员站长
2022/11/04
1.8K0
Pandas重复值处理
import pandas as pd #生成数据 data1,data2,data3,data4=['a',3],['b',2],['a',3],['c',2] df=pd.DataFrame([data1,data2,data3,data4],columns=['col1','col2']) print(df) col1 col2 0 a 3 1 b 2 2 a 3 3 c 2 #判断数据 isDuplicated=df.duplicat
hankleo
2020/09/17
7850
用ChatGPT生成测试数据
在之前的文章 用ChatGPT写一个数据采集程序 中,我们演示了如何用 ChatGPT 辅助编写代码。
Crossin先生
2023/08/29
2600
用ChatGPT生成测试数据
Pandas缺失值处理
#导入库 import pandas as pd import numpy as np from sklearn.preprocessing import Imputer #生成缺失数据 df=pd.DataFrame(np.random.randn(6,4),columns=['col1','col2','col3','col4']) df.iloc[1:2,1] = np.nan #增加缺失值 df.iloc[4,3] = np.nan #增加缺失值 print(df) #打印输出 co
hankleo
2020/09/17
6480

相似问题

Pandas用NA值检查相等性会产生NA

21

如何使用已写入csv的pandas数据帧测试相等性

117

Pandas分类相等性检验

230

对相等列值的pandas数据帧进行切片

213

purrr::map()一个深度嵌套的列表,用于测试数据帧的相等性

131
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文