我可以通过以下方式转换列的数据类型
选项1
df['column_name']=df.column_name.astype(str)
选项2
df['column_name']=df['column_name'].astype(str)
我的问题-选项1和2有什么区别?如果有,哪个更好?
答案 0 :(得分:1)
让我们举个例子:
>>df
Row Labels col1 col2
abc12 1 2
def34 3 4
ghi56 5 5
现在是否按以下方式应用类型:
df['Row Labels']=df['Row Labels'].astype(str)
您可以看到,以上列Row Labels
已通过以下方式转换为str:
df.applymap(type).eq(str).all()
但是,如果您尝试使用选项1:
df['Row Labels']= df.Row Labels.astype('str')
您将面对:
df ['Row Labels'] = df.Row Labels.astype('str')
^
SyntaxError:语法无效
类似地,与df.col_name
相比,df['col_name']
的大多数操作无法正常工作
希望能回答您的问题。