如何在Python中将混合值转换为整数?
我在DataFrame中有一列,如下所示:如何在Python中将混合值转换为整数?,python,pandas,dataframe,types,Python,Pandas,Dataframe,Types,我在DataFrame中有一列,如下所示: column1 Jone Jeck 42 Fin Tom 45 所有值都是str。如何将42和45转换为int类型?使用自定义函数,但以后实际处理混合数据确实很痛苦: def f(x): try: return int(x) except: return x df['column1'] = df['column1'].apply(f) print (df) column1 0 Jone 1
column1
Jone
Jeck
42
Fin
Tom
45
所有值都是str。如何将42和45转换为int类型?使用自定义函数,但以后实际处理混合数据确实很痛苦:
def f(x):
try:
return int(x)
except:
return x
df['column1'] = df['column1'].apply(f)
print (df)
column1
0 Jone
1 Jeck
2 42
3 Fin
4 Tom
5 45
print (df['column1'].apply(type))
0 <class 'str'>
1 <class 'str'>
2 <class 'int'>
3 <class 'str'>
4 <class 'str'>
5 <class 'int'>
Name: column1, dtype: object
def(x):
尝试:
返回整数(x)
除:
返回x
df['column1']=df['column1'].应用(f)
打印(df)
专栏1
0琼斯
1杰克
2 42
3鳍
4汤姆
5 45
打印(df['column1'].应用(类型))
0
1.
2.
3.
4.
5.
名称:column1,数据类型:object
使用自定义函数,但以后实际处理混合数据确实很痛苦:
def f(x):
try:
return int(x)
except:
return x
df['column1'] = df['column1'].apply(f)
print (df)
column1
0 Jone
1 Jeck
2 42
3 Fin
4 Tom
5 45
print (df['column1'].apply(type))
0 <class 'str'>
1 <class 'str'>
2 <class 'int'>
3 <class 'str'>
4 <class 'str'>
5 <class 'int'>
Name: column1, dtype: object
def(x):
尝试:
返回整数(x)
除:
返回x
df['column1']=df['column1'].应用(f)
打印(df)
专栏1
0琼斯
1杰克
2 42
3鳍
4汤姆
5 45
打印(df['column1'].应用(类型))
0
1.
2.
3.
4.
5.
名称:column1,数据类型:object
val='42';int(val)?val='42';int(val)?