【发布时间】:2021-07-26 22:58:36
【问题描述】:
Python 3.8.5 和 Pandas 1.1.3
我有一个包含以下列的 csv 文件:姓名、城市、州和邮政编码。我需要将城市、州和邮政编码列值转换为 json,其中包含一个名为 Residence 的对象。
例如:
CSV 文件
Name City State Zipcode
John Doe Akron OH 44140
我需要 JSON 输出的结构如下:
{
"name": "John Doe",
"residence" :
{
"city": "Akron",
"state": "OH",
"zipcode": 44140
}
}
我目前使用 Pandas 使用以下代码将 csv 转换为 json:
import pandas as pd
csv_file = pd.DataFrame(pd.read_csv("data.csv", sep = ",", header = 0, index_col = False))
csv_file.to_json("data.json", orient = "records", lines = True, date_format = "iso", double_precision = 10, force_ascii = True, date_unit = "ms", default_handler = None)
按原样,将每列转换为 json 键:值。
如何添加到此代码以实现我想要的输出?
【问题讨论】:
-
您的 csv 是否只有 1 行数据?还是有几个?如果是后者,你将如何返回 JSON?
-
@QuangHoang 不,它有数千行。参数
lines = True用于将每个csv行输出到一个新行的json对象中。