首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >ValueError:(‘长度必须匹配才能比较’,(229025,),(1,))

ValueError:(‘长度必须匹配才能比较’,(229025,),(1,))
EN

Stack Overflow用户
提问于 2021-10-26 10:28:05
回答 1查看 112关注 0票数 0

我在Jupyter notebook内部工作,我的理解是,在最后一行中,通过调用df_speed_full['cam_id'] == rand_cam_id,我将索引标记为TrueFalse,然后将它们传递给外部df_speed_full,以便只选择那些具有True的索引。然而,不知何故,我得到了这个。如果能解释一下我在这里遗漏了什么,我将不胜感激。我试着读了其他答案,但什么都没有点击。

代码语言:javascript
运行
AI代码解释
复制
rand_row = df_speed_full.sample(random_state=42)
rand_cam_id = list(rand_row['cam_id'])
rand_cam_df = df_speed_full[df_speed_full['cam_id'] == rand_cam_id]

这就是我得到的:

代码语言:javascript
运行
AI代码解释
复制
---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
C:\Users\HENRYK~1\AppData\Local\Temp/ipykernel_18136/4206593172.py in <module>
----> 1 rand_cam_df = df_speed_full[df_speed_full['cam_id'] == rand_cam_id]

~\anaconda3\lib\site-packages\pandas\core\ops\common.py in new_method(self, other)
     67         other = item_from_zerodim(other)
     68 
---> 69         return method(self, other)
     70 
     71     return new_method

~\anaconda3\lib\site-packages\pandas\core\arraylike.py in __eq__(self, other)
     30     @unpack_zerodim_and_defer("__eq__")
     31     def __eq__(self, other):
---> 32         return self._cmp_method(other, operator.eq)
     33 
     34     @unpack_zerodim_and_defer("__ne__")

~\anaconda3\lib\site-packages\pandas\core\series.py in _cmp_method(self, other, op)
   5500 
   5501         with np.errstate(all="ignore"):
-> 5502             res_values = ops.comparison_op(lvalues, rvalues, op)
   5503 
   5504         return self._construct_result(res_values, name=res_name)

~\anaconda3\lib\site-packages\pandas\core\ops\array_ops.py in comparison_op(left, right, op)
    259         #  The ambiguous case is object-dtype.  See GH#27803
    260         if len(lvalues) != len(rvalues):
--> 261             raise ValueError(
    262                 "Lengths must match to compare", lvalues.shape, rvalues.shape
    263             )

ValueError: ('Lengths must match to compare', (229025,), (1,))
EN

回答 1

Stack Overflow用户

发布于 2021-10-26 10:46:41

抱怨来自您的==操作(通过特殊方法__eq__位于错误回溯中这一事实可以看出)。

在比较DataFrame或系列对象(如A == B )时,会发生以下情况:

  1. 如果A是一个数据帧/系列,B是一个标量,你会得到一个True/False的数据帧/系列,说明如果每个元素等于,A是一个数据帧/系列,B是一个数据帧/系列,那么A的每个元素将与<代码>d15False>的每个相应元素进行比较。只有当AB具有相同的形状时,这才有效。

你将进入第二种选择。但是您正在将一个包含229025个元素的系列与一个原本应该包含229025个元素但实际上只有1个元素的列表进行比较,这是因为您匹配的是一个只有一个元素的list

您可能希望将第二行替换为rand_cam_id = list(rand_row['cam_id'])[0]。这将使rand_cam_id不再是一个列表,而是您期望在列表中找到的单个元素。这样,==操作将通过第一个选项,并为您提供您期望的元素匹配。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69728226

复制
相关文章
使用ajax提交必须alert才能赋值
一个奇怪的问题,在使用ajax提交的时候将返回值赋给一个变量,无论怎么写都没法赋值,刚开始怀疑js有错但是ie没有反应过来,多次清缓存、部程序都没效果。。。。。。最后只好一行一行的alert看原因出在哪里;奇怪的是加上了alert之后就可以赋值,删掉alert后就又不可以了。百度了一下发现是因为ajax默认是异步执行的,也就是并没有等待请求完毕就开始执行下一行js语句了,导致赋值为null。
西门呀在吹雪
2020/11/09
8860
python: ValueError:
File "/self/_UDACity/pythonLearning/mathTest.py", line 28, in <module>     tmp3 = math.log((1/3), 2)# ValueError: math domain error
py3study
2020/01/08
7010
TensorFlow报错ValueError: Variable layer1-conv1/weight already exists,
一个程序中有tf.variable_scope()函数,第一次运行报错之后,第二次修改bug再次运行会报如下错误:
嵌入式视觉
2022/09/05
6160
TensorFlow报错ValueError: Variable layer1-conv1/weight already exists,
ValueError:invalid
使用django的异步调用场景时,并配置了如下配置:出现了错误:ValueError: Database is int between 0 and limit - 1, not :6379/0
cywhat
2023/04/27
3760
Celery ValueError: n
最近因项目需要,在使用任务队列Celery的时候,出现如题错误,最终在github上里找到解决办法,记录一下。
py3study
2020/01/20
7930
ValueError: too many
数据:{'O_DATA': [{'ACCOUNT': 'A20001002', 'ZACTOSP': Decimal('21792635.96'), 'ZBUDGET': Decimal('290271.50'), 'ZACTUAL': Decimal('4878563.10')}]}
py3study
2020/01/16
6800
ValueError: too many
dbfread报错ValueError错
然后查找.dbf源文件的时候,发现在报错的那一行数据中,有一列甚至好几列的数据中出现了'.',里面是否有空格忘记了,但是应该没关系,我查阅了dbfred库文件中的代码,里面对空格的问题已经有了很好的处理。所以这里报错的原因就是
py3study
2020/02/10
1K0
正则表达式匹配_正则表达式匹配字符串长度
请实现一个函数用来匹配包括’.’和’*’的正则表达式。模式中的字符’.’表示任意一个字符,而’*’表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串”aaa”与模式”a.a”和”ab*ac*a”匹配,但是与”aa.a”和”ab*a”均不匹配
全栈程序员站长
2022/09/19
2K0
strncmp函数——比较特定长度的字符串
strncmp函数用于比较特定长度的字符串。 头文件:string.h。 语法  int strncmp(const char *string1, const char *string2, size_t count); strncmp函数的语法参数说明如表2.4所示。 表2.4  参数说明 参    数描    述 string1 给定的字符串 string2 给定的字符串 count 要进行比较的长度 返回值:当string1大于string2时,返回1;等于时,返回0;小于时,返回-1。 示例  本
Angel_Kitty
2018/04/09
2.5K0
解决ValueError: cannot convert float NaN to integer
当我们在使用Python进行数值计算时,有时会遇到类似于​​ValueError: cannot convert float NaN to integer​​的错误。这个错误通常是由于我们试图将一个NaN(Not a Number)转换为整数类型引起的。在本篇文章中,我们将讨论这个错误的原因以及如何解决它。
大盘鸡拌面
2023/10/22
2.4K0
网页实现 1CM 物理长度
携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第20天,点击查看活动详情
Jimmy_is_jimmy
2022/09/22
6840
网页实现 1CM 物理长度
ValueError: ' ' is not a valid scope name
? 去掉tf.variable_scope双引号中间的空格。 去掉tf.variable_scope双引号中间的空格。 去掉tf.variable_scope双引号中间的空格。 去掉tf.variab
狼啸风云
2019/03/15
4.2K0
[1186]ValueError: This sheet is too large!
pandas导出excel,由于excel限制,.xls文件结尾,最大限制行数65535,.xlsx文件结尾,最大限制行数1048576
周小董
2023/10/10
4300
用【滑动窗口】 比较长度,用 Hash Table 记录位置
输入: s = “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例 2:
MickyInvQ
2020/12/07
3720
用【滑动窗口】 比较长度,用 Hash Table 记录位置
Matplotlib类别比较图(1)
matplotlib提供了bar函数绘制柱状图。语法:plt.bar(left, height, width, bottom, align, **kwargs)
python数据可视化之路
2023/02/23
7040
Matplotlib类别比较图(1)
密码最短长度为7,其中必须包含以下非字母数字字符1 完美解决方案
大家用2005网站配置中遇到"密码最短长度为7,其中必须包含以下非字母数字字符1" 问题没有? 在这里给出解决方法: 方法一:7位密码中请用输入~!@#$^&*()_+中的一个 方法二:到C:W
脑洞的蜂蜜
2018/02/01
8570
框架分析(1)-IT人必须会
Angular:一个由Google开发的JavaScript框架,用于构建单页应用程序。 React:由Facebook开发的JavaScript库,用于构建用户界面。 Vue.js:一个轻量级的JavaScript框架,用于构建用户界面。
学编程的小程
2023/10/11
2230
框架分析(1)-IT人必须会
怎么查看域名是否备案?域名必须备案才能使用吗?
现在我国的法律是非常全面的,无论是各行各业都有具体的法律规定,能够让大家的日常生活拥有更加高的安全保障,毕竟社会中坏人还是很多的,很多人都想着不劳而获,随着互联网行业的不断发展,渐渐衍生出很多抓漏洞的人,如果想要保护好自己的虚拟财产的话很多时候都是需要进行备案的,其中就包括互联网中的网站备案,网站的域名也是可以备案的,但是大家都不知道怎么查看域名是否备案,下面小编就为大家来详细介绍一下。
用户8739990
2021/07/30
39.2K0
怎么查看域名是否备案?域名必须备案才能使用吗?
解决ValueError: Cannot feed value of shape (1, 10, 4) for Tensor Placeholder:0 , w
这个错误通常是由于输入数据的形状与定义的模型输入的形状不匹配所导致的。这篇文章将介绍如何解决这个错误,并对问题的背景和解决步骤进行详细说明。
大盘鸡拌面
2023/10/17
5710
必须放在特定的文件夹中才能运行的Python程序
下面的小代码要演示的问题是,可以规定某个Python程序必须放在特定的文件夹(代码中假设必须放到Python安装目录中)中才能运行,移动到其他文件夹之后会拒绝运行。 import os import sys #获取当前文件夹或程序所在文件夹 cur = os.getcwd() #Python安装文件夹 right = sys.prefix if right != cur: print("You must place this program in Python installation directory
Python小屋屋主
2018/04/16
1.8K0

相似问题

ValueError:长度必须匹配才能比较(Pandas)

14

ValueError:(“长度必须匹配比较”,(120,),(1,))

15

Python Scipy优化错误"ValueError:长度必须匹配才能进行比较“

13

长度必须匹配才能进行比较

112

ValueError:在Pandas中匹配日期时,序列长度必须匹配才能进行比较

21
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

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

洞察 腾讯核心技术

剖析业界实践案例

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