我有一列具有这样的值:
columnA
[12,4352,545]
[123123,5436,665]
[234,646,5747]
当我将包含此列的DataFrame写入CSV时,我想删除该列中每个数组的括号。我已经尝试过str.replace
和str.strip
,但是花括号从未删除。我也尝试将它们全部转换为元组,然后改为删除括号,但无济于事。
答案 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)
我建议使用与逗号不同的分隔符。您可以使用任何您想要的东西。
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