使用python TypeError:len()在dataframe中循环列

2024-03-29 07:14:00 发布

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

下面是我正在编写的for循环,但它一直返回错误。无法安静地想出如何修正错误。我认为这和if语句有关,但不知道该怎么解决。在

TypeError:未调整大小的对象的len()

for i in df_py['Type']:
    if i == df_stroke['Type']:
        print True
    elif i != df_stroke['Type']:
        print False

我的主要目标是比较两个数据帧在“Type”中各自的值。每个数据帧都有相似的值,但我希望循环执行以使过程自动化。比较这两个值,然后返回true或false语句来告诉我它们是否匹配。在

^{pr2}$

退货: 类型'数字.int64'类型'数字.int64'

两者都是同一类型。在

> 2     if i == df_stroke['Type']:
  3         print True
  4     elif i != df_stroke['Type']:
  5         print False

/usr/local/lib/python2.7/site-packages/pandas/core/操作pyc在包装器中(自身、其他、轴) 739未执行返回

740         elif isinstance(other, (np.ndarray, pd.Index)):

-->;741 if len(self)!=长度(其他):

742                 raise ValueError('Lengths must match to compare')

743             return self._constructor(na_op(self.values,np.asarray(other)),

TypeError:未调整大小的对象的len()


Tags: 对象selftrue类型dfforlenstroke
2条回答

试试^{}。在

# generate some example data.
import numpy as np
import pandas as pd

N = 10
values = ['a','b','c']
df1 = pd.DataFrame({"Type": np.random.choice(values, size=N)})
df2 = pd.DataFrame({"Type": np.random.choice(values, size=N)})

eq提供元素级比较:

^{pr2}$

for i in df_py['Type']遍历df_py['Type'],并将其分配给i。但是,在比较时,您将df_py['Type']的一个项目i与整个数据帧{}进行比较。在

您还没有指定要用代码实现的具体目标,因此我的建议是将df_stroke['Type']更改为{},或者使用其他各种数据帧操作来执行比较。在

相关问题 更多 >