Pandas to_csv在包含原始json的列上额外写入“

svmlkihl  于 2023-02-17  发布在  其他
关注(0)|答案(1)|浏览(94)

我试图保存我的数据框为csv后处理我的数据。
一个警告是,我有一个列也包含文件的"raw json"。
当panda使用to_csv(header = False)保存文件时,我得到以下内容

1,2,"{""col_1"":""1"",""col_2"":""1""}"

我的 Dataframe 如下所示:
| 列_1|第二栏|原始_json|
| - ------|- ------|- ------|
| 1个|1个|{"列_1 ":1,"列_2 ":1}|
我试着添加json列,如下所示:

for i, row in df:
    i_val = row.to_json()
    df.at[i,'raw_json'] = i_val

预期csv:

1,2,{"col_1":"1","col_2":"1"}
oxiaedzo

oxiaedzo1#

您可以使用以下内容:

import csv
import pandas as pd

df.to_csv('output.csv', index=False, header=False, quoting=csv.QUOTE_NONE, sep=';')

@pranav-hosangadi解释道:
“CSV格式使用引号对本身包含分隔符的字段进行转义”
因此,当您设置quoting=csv.QUOTE_NONE时,您禁用了该行为,并且不会引用任何内容。

**重要提示:**请注意,在本例中csv的分隔符为";",因此您需要确保字段不包含可能损坏csv的";"字符

相关问题