使用Pandas将数据从CSV格式传输到具有大量字段名的JSON

时间:2019-03-13 06:36:15

标签: python json pandas

尝试获取如下所示的文件

data

,并使用以下代码将其转换为Json。它无法正确打印值。除顶部列以外的值都显示为NULL。

import numpy as np
import pandas as pd
import csv
import json


df = pd.read_csv('1mins data.csv', 'r', ",")
df.head()
fieldnames = df.columns[1:-1]
print(fieldnames[:])

jsonfile = open('1mins data.json', 'w')
fieldnames=fieldnames
reader = csv.DictReader( df, fieldnames)
for row in reader:
    json.dump(row, jsonfile)
    jsonfile.write('\n')

在接受了以下建议之后,我已经更新了脚本。

import numpy as np
import pandas as pd
import csv
import json


df = pd.read_csv('1mins data.csv', 'r', ",")
df.head()

df.columns[1:-1].to_json(path_or_buf='1minsdata.json')

现在我收到此错误,

AttributeError: 'Index' object has no attribute 'to_json'

通过此操作解决了

    import numpy as np
import pandas as pd
import csv
import json


df = pd.read_csv('1mins data.csv', 'r', ",")
df.set_index('Time')df.to_json()

df.to_json(path_or_buf='1mins data.json')
df.to_json()

预先感谢

1 个答案:

答案 0 :(得分:1)

您可以使用

将pandas DataFrame转换为json字符串
const openyeah = "notepad.exe";
const fs = require("fs");

fs.open(openyeah,"r",(err,fd)=>{
    if(err){
        console.log('errors')
    }else{
        console.log("correct")
    }
})

https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.to_json.html