我有一个输出,当前输出如下:
h1 h2
a1 5
a2 4
a3 3
但是,我需要输出看起来像这样:
a1:5
a2:4
a3:3
老实说,我不确定该使用哪种格式来格式化它。
答案 0 :(得分:0)
我认为您可以做到
设置数据框
df = pd.DataFrame ({'h1' : ['a1','a2','a3'], 'h2' : ['5','4','3']})
加入两列
df['h3'] = df[['h1', 'h2']].apply(lambda x: ':'.join(x), axis=1)
您将获得此输出
编辑扩展了该示例
加入任意数量的列
对于任何列数,删除对列的特定引用
df['h3'] = df.apply(lambda x: ':'.join(x), axis=1)
这将合并列中的所有值
将数字转换为字符串
要使连接有效,请先将整数转换为字符串
df['h2'] = df['h2'].apply(str)
我们在此扩展示例中看到
创建数据框
df = pd.DataFrame ({'h1' : ['a1','a2','a3'],
'h2' : [5,4,3],
'hx' : ['X','Y','Z'],
'hy' : ['A','B','C'] })
请注意,列h2现在是整数
将h2转换为字符串
df['h2'] = df['h2'].apply(str)
应用联接
df['h3'] = df.apply(lambda x: ':'.join(x), axis=1)
产生以下