我需要将一个csv文件转换成json文件。我已经尝试了一些python的例子,可在线,但似乎没有适合我的需要。
我的csv文件包含一个标题,然后每个日期有多行。我不完全确定术语,但我认为我需要在csv(NA,NE,SE)的第一个字段中的每个唯一ID在json中有自己的对象。
任何帮助都将不胜感激。干杯!
输入示例
A1,sDate,eDate,A2
NA,01/01/2023,01/05/2023,2
NE,01/01/2023,01/05/2023,3
SE,01/01/2023,01/05/2023,4
NA,02/01/2023,02/05/2023,5
NE,02/01/2023,02/05/2023,6
SE,02/01/2023,02/05/2023,7
我想要的输出是
{
"NA": [
{
"sDate": "01/01/2023",
"eDate": "01/05/2023",
"a2": 2
},
{
"sDate": "02/01/2023",
"eDate": "02/05/2023",
"a2": 5
}
],
"NE": [
{
"sDate": "01/01/2023",
"eDate": "01/05/2023",
"a2": 3
},
{
"sDate": "02/01/2023",
"eDate": "02/05/2023",
"a2": 6
}
],
"SE": [
{
"sDate": "01/01/2023",
"eDate": "01/05/2023",
"a2": 4
},
{
"sDate": "02/01/2023",
"eDate": "02/05/2023",
"a2": 7
}
]
我正在使用Pandas图书馆来帮助这件事,但它没有给出我需要的结果。
一个二个一个一个
2条答案
按热度按时间qnakjoqk1#
您可以使用panda和groupby:
输出:
rnmwe5a22#
defaultdict
对于此类处理非常有用1.读取文件并创建文件的
csv.DictReader
,然后将其转换为列表,1.将
list
发送到build_structure
函数。1.你有一个
defaultdict
,你可以用json
来dumps
它。