导出为CSV时从DataFrame列中删除括号

时间:2019-07-31 19:31:58

标签: python-3.x pandas jupyter-notebook

我有一列具有这样的值:

columnA
[12,4352,545]
[123123,5436,665]
[234,646,5747]

当我将包含此列的DataFrame写入CSV时,我想删除该列中每个数组的括号。我已经尝试过str.replacestr.strip,但是花括号从未删除。我也尝试将它们全部转换为元组,然后改为删除括号,但无济于事。

2 个答案:

答案 0 :(得分:1)

请尝试,如果您的值是列表而不是字符串:

 df['colA'].astype(str).str.strip('[|]')

MVCE:

df = pd.DataFrame({'colA':[[1,2],[3,4]]})
df

输出:

   colA
0  [1, 2]
1  [3, 4]

将列表转换为字符串和带状字符。

df['colA'].astype(str).str.strip('[|]')

输出:

0    1, 2
1    3, 4
Name: colA, dtype: object

答案 1 :(得分:1)

我建议使用与逗号不同的分隔符。您可以使用任何您想要的东西。

ScottBoston的设置

df = pd.DataFrame({'colA':[[1,2],[3,4]]})

applymap

#                       The Delimiter ▼
df.assign(colA=df.colA.map(lambda x: '|'.join(map(str, x))))
  colA
0  1|2
1  3|4