相关疑难解决方法(0)

TypeError:只能将 str (不是“numpy.int64”)连接到 str

我想根据以下数据集的索引号打印变量:

在此输入图像描述

这里我使用了以下代码:

import pandas as pd

airline = pd.read_csv("AIR-LINE.csv")

pnr = input("Enter the PNR Number ")
index = airline.PNRNum[airline.PNRNum==pnr].index.tolist()
zzz = int(index[0])
print( "The flight number is " + airline.FlightNo[zzz]  )
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

TypeError:只能将 str (不是“numpy.int64”)连接到 str

我知道错误是因为FlightNo变量包含int值。但我不知道如何解决。任何想法?

python nlp

7
推荐指数
1
解决办法
3万
查看次数

与Pandas系列一起在运算符中使用

为什么我不能使用来匹配Pandas系列中的字符串in?在以下示例中,第一个评估意外导致False,但是第二个评估有效。

df = pd.DataFrame({'name': [ 'Adam', 'Ben', 'Chris' ]})
'Adam' in df['name']
'Adam' in list(df['name'])
Run Code Online (Sandbox Code Playgroud)

pandas

6
推荐指数
1
解决办法
999
查看次数

在python中的类型转换AttributeError:'str'对象没有属性'astype'

我对python pandas中的类型转换感到困惑

df = pd.DataFrame({'a':['1.23', '0.123']})
type(df['a'])
df['a'].astype(float)
Run Code Online (Sandbox Code Playgroud)

df是一个熊猫系列,其内容是2个字符串,然后我可以应用于astype(float)这个熊猫系列,它正确地将所有字符串转换为浮点数.然而

df['a'][1].astype(float)
Run Code Online (Sandbox Code Playgroud)

给我AttributeError:'str'对象没有属性'astype'.我的问题是:怎么会这样?我可以将整个系列从字符串转换为浮点数,但我无法将此系列的条目从字符串转换为浮点数?

另外,我加载了我的原始数据集

df['id'].astype(int)
Run Code Online (Sandbox Code Playgroud)

它生成了ValueError:int()的无效文字,基数为10:''这个似乎表明我的内容中有空白df['id'].所以我通过打字来检查是否属实

'' in df['id']
Run Code Online (Sandbox Code Playgroud)

它说错了.所以我很困惑.

python type-conversion pandas

4
推荐指数
1
解决办法
4万
查看次数

检查pandas中任何列的任何行中是否存在一个值?

是否有任何函数来检查pandas中任何列的任何行中是否存在值,例如

columnA columnB columnC
"john" 3 True
"mike" 1 False
"bob" 0 False
Run Code Online (Sandbox Code Playgroud)

在上面的数据框架中,我想知道"mike"在整个数据框架的任何元素中是否有任何值,如果它存在,我想得到True- 否则得到False.

谢谢.

python pandas

3
推荐指数
1
解决办法
8523
查看次数

为什么 python `in` 比 `np.isin` 快得多

我正在实现一些搜索算法,numpy其中一个步骤是检查向量是否在矩阵中(作为行)。我以前用过np.isin,但我突然很好奇 python 关键字是否in有效。因此我对其进行了测试,发现它确实有效。

\n\n

由于我没有找到任何 python 接口in(例如__add__for+__abs__for abs),我相信in通过使用标准迭代器逻辑在 python 中进行硬连接,因此它应该比 -providednumpynp.isin。但在我做了一些测试之后,令人难以置信的是:

\n\n
>>> a = np.int8(1)\n>>> A = np.zeros(2**24, \'b\')\n>>> %timeit a in A\n>>> %timeit np.isin(a, A)\n21.7 ms \xc2\xb1 1.58 ms per loop (mean \xc2\xb1 std. dev. of 7 runs, 10 loops each)\n310 ms \xc2\xb1 20.4 ms per loop (mean \xc2\xb1 std. dev. of 7 runs, 1 loop each)\n …
Run Code Online (Sandbox Code Playgroud)

python numpy

2
推荐指数
1
解决办法
2043
查看次数

标签 统计

python ×4

pandas ×3

nlp ×1

numpy ×1

type-conversion ×1