我有一个大熊猫数据框架还没有索引(只是人工1,2,3,..索引)
专栏' store',' style'是字符串,列'颜色','尺寸'是一个很长的int。 它们中没有一个是独一无二的,但它们的串联是独一无二的。
我希望将它们连接起来以生成索引,但是
df2['store']+df2['style']+str(df2['color'])+str(df2['size'])
或
df2['store']+df2['style']+df2['color'].to_string()+df2['size'].to_string()
两者都不起作用。我认为它需要整个列,强制它成为一个字符串并连接,这会产生奇怪的符号。合并无法正常工作。
连接字符串列和长列的正确方法是什么?
答案 0 :(得分:2)
这应该是:
df2['store'] + df2['style'] + df2['color'].astype(str) + df2['size'].astype(str)
说明:str(df2['size'])
将创建完整列的字符串表示形式(一个字符串,与您打印字符串时所看到的字符串相当),而.astype(str)
会将系列的所有值转换为字符串。
to_string
给出与str()
相同的结果(但需要使用可选参数来控制结果)