gpt4 book ai didi

python - 检查 object-dtype 列值是 float 还是 string 的函数

转载 作者:行者123 更新时间:2023-12-04 15:52:10 27 4
gpt4 key购买 nike

我正在尝试在 excel 中编写一个等于 isnumber[column] 函数的函数

数据集:

feature1 feature2 feature3
123 1.07 1
231 2.08 3
122 ab 4
111 3.04 6
555 cde 8

feature1: integer dtype
feature2: object dtype
feature3: integer dtype

这段代码我试过了

for item in df.feature2.iteritems():
if isinstance(item, float):
print('yes')
else:
print('no')

我得到的结果是

 no
no
no
no
no

但是我想要的结果是

yes
yes
no
yes
no

当我尝试检查单个 feature2 值的类型时,这就是所见

type(df.feature2[0]) = str
type(df.feature2[1]) = str
type(df.feature2[2]) = str
type(df.feature2[3]) = str
type(df.feature2[4]) = str

But clearly 0,1,3 should be shown as float, but they show up as str

我做错了什么?

最佳答案

Iteritems 正在返回一个元组,((123, '1.07'), 1.07) 并且由于您想遍历每个值,请尝试以下代码。您只需要删除 .iteritems(),它就会像魅力一样工作。

df['feature2']=[1.07,2.08,'ab',3.04,'cde']
for item in df.feature2:
if isinstance(item,float):
print('yes')
else:
print('no')

这是你的输出:

yes
yes
no
yes
no

关于python - 检查 object-dtype 列值是 float 还是 string 的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53418392/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com