Pandas 为什么aType不是值的偶然类型?

Pandas 为什么aType不是值的偶然类型?,pandas,type-conversion,Pandas,Type Conversion,结果是“str” 结果也是“str”。我想把“1”和“7.0”转换成1和7 我哪里做错了 为什么aType不是值的偶然类型 因为errors=“ignore”工作方式与您想象的不同 如果失败,它将返回相同的值,因此不会发生任何更改 如果需要数值和NaN中的值,如果失败: df.A = df.A.astype(int, errors = "ignore") type(df.A[0]) df.A = df.A.astype(int, errors = "ignore&

结果是“str”

结果也是“str”。我想把“1”和“7.0”转换成1和7

我哪里做错了

为什么aType不是值的偶然类型

因为
errors=“ignore”
工作方式与您想象的不同

如果失败,它将返回相同的值,因此不会发生任何更改

如果需要数值和
NaN中的值,如果失败:

df.A = df.A.astype(int, errors = "ignore")
type(df.A[0])
df.A = df.A.astype(int, errors = "ignore")
type(df.A[0])
df['A'] = pd.to_numeric(df['A'], errors='coerce').astype('Int64')
print (df)
      A
0     1
1     7
2  <NA>
def num(x):
    try:
        return(int(float(x)))
    except:
        return x

df['A'] = df['A'].apply(num)
print (df)

0    1
1    7
2  xyz