import pandas as pd
d=[('Shubham',24),
('Shrikant',58),
('na',34)]
df = pd.DataFrame(d,columns=['Name','Age'])
df.dtypes
输出: 名称对象
年龄int32
dtype:object
如何将“Name”列的数据类型转换为float?
df['Name'].astype(float)
获得以下错误: ValueError:无法将字符串转换为float:'na'
答案 0 :(得分:-1)
如果你的意思是将名称转换为数字然后是no,则不能使用astype直接将字符串转换为我所知道的数字。如果您打算编码,那么它如下:
import pandas as pd
d=[('Shubham',24),
('Shrikant',58),
('na',34)]
df = pd.DataFrame(d,columns=['Name','Age'])
df['Name'] = df['Name'].astype('category').cat.codes
print(df.head())