从文档中我知道,为了保存为 .csv
文件,可以简单地执行以下操作:
df.to_csv(sep = ';')
但是,我想使用我的自定义分隔符,例如::::
。如何将 :::
设置为分隔符?。我试图:
df.to_csv(sep = ':::')
得到:TypeError: "delimiter"must be a 1-character string
我还尝试了:df.to_csv('../data.csv', sep='\s*\:::', index=False)
,得到了相同的结果.因此,如何设置自己的分隔符?
更新
因为我的数据框有 |
,所以我不能使用这样的字符作为分隔符。我试图用以下方法删除它:
df.replace('\b|\b', '-', regex = True)
然而,这并没有奏效。关于如何删除它的任何替代方法?
最佳答案
这是一篇旧文章,但在谷歌搜索如何将 Dataframe 导出到 csv 时,我似乎总是会落在这里。
虽然你不能直接用 Pandas 做,但你可以用 Numpy 做。
由于 Pandas 需要 Numpy,因此您不会增加包的大小。
要做你想做的,你可以简单地做:
import numpy as np
np.savetxt('out.csv', my_df, delimiter=':::')
Numpy 提供了一个更好的 api 来保存 csv 文件。您甚至可以使用以下方法指定不同的分隔符:
import numpy as np
np.savetxt('out.csv', my_df, fmt=['%.2f:::', '%f', '%s'])
您可以找到所有可能的选项 in the docs .
关于python - 如何在 pandas to_csv() 中设置自定义分隔符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43324461/