【发布时间】:2020-02-17 11:00:35
【问题描述】:
我有一个 csv 文件,其中一些列的格式为 x;y;z。我正在使用 pandas 读取这些数据,进行一些预处理并使用 pandas 的 to_json/to_dict 方法转换为 json 对象列表。在转换这些特殊列时,该列的 json 对象应采用 {x: {y: {z: value}}} 格式。可能有不同的列,如 x:y:z 和 x:y:a,这两个必须合并到结果记录 json 中的单个对象中,格式为 {x: {y: {z: value1,一个:值2}}}
CSV:
Id,Name,X;Y;Z,X;Y;A,X;B;Z
101,Adam,1,2,3
102,John,4,5,6
103,Sara,7,8,9
输出:
[
{
"Id":101,
"Name":"Adam",
"X":{
"Y":{
"Z":1,
"A":2
},
"B":{
"Z":3
}
}
},
{
"Id":102,
"Name":"John",
"X":{
"Y":{
"Z":4,
"A":5
},
"B":{
"Z":6
}
}
},
{
"Id":103,
"Name":"Sara",
"X":{
"Y":{
"Z":7,
"A":8
},
"B":{
"Z":9
}
}
}
]
【问题讨论】:
-
@pissall 我不需要进行分组,因为 x;y;z 是单列,它的值必须转换为嵌套的 json 对象
-
如果您实际显示您的数据结构和预期输出,您可能会得到更好的响应
-
@ChrisDoyle 更新了数据结构和输出
-
谢谢,我会看看,但到目前为止你尝试了什么,什么不起作用