转换Pandas中的数据,然后输出到CSV

2024-05-28 18:57:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我的知识不足以做到这一点:(我从如下数据开始:

{"data": {"1547700225.29": -5.3369832056203785, "1547700227.54": -6.044502239243294, "1547700229.7899997": -4.642320938763093, "1547700231.9799995": -5.104047573562501, "1547700234.1799998": -5.104047573562501, "1547700236.4699998": -5.3369832056203785, "1547700238.7699995": -5.807173592599741}}

这是我目前的剧本:

import csv
import json
import pandas as pd
from pandas.io.json import json_normalize
def json_csv():
with open('metis.json') as data_file:
    data=json.load(data_file)
normalized_df = pd.io.json.json_normalize(data)
normalized_df = pd.DataFrame.transpose(normalized_df)
normalized_df.to_csv('metis.csv',index=False)
return
def main():        
    json_csv() 
main()

我需要一个CSV文件,看起来像这样:

Time, Value
1547700225.29,-5.3369832056203785
1547700227.54,-6.044502239243294
1547700229.7899997,-4.642320938763093
1547700231.9799995,-5.104047573562501
1547700234.1799998,-5.104047573562501
1547700236.4699998,-5.3369832056203785
1547700238.7699995,-5.807173592599741

当我以交互方式运行命令时,转置可以工作,因此它与数据结构有关/或者使用to-csv方法。我只是知道的还不够多

时间也是epoch时间,我需要转换成一个可读的datetime

有小费吗?我不介意研究是否指向正确的方向,但我读了很多书,为了找到答案,我没有找到正确的术语


Tags: csvtoioimportjsonpandasdfdata
1条回答
网友
1楼 · 发布于 2024-05-28 18:57:21

用途:

df = pd.read_json('metis.json').reset_index()
df.columns = ['Time', 'Value']
df.to_csv('output.csv')

# Also has human readable time
+ -+            -+     -+
|   |          Time           |   Value   |
+ -+            -+     -+
| 0 | 2019-01-17 04:43:45.290 | -5.336983 |
| 1 | 2019-01-17 04:43:47.540 | -6.044502 |
| 2 | 2019-01-17 04:43:49.790 | -4.642321 |
| 3 | 2019-01-17 04:43:51.980 | -5.104048 |
| 4 | 2019-01-17 04:43:54.180 | -5.104048 |
| 5 | 2019-01-17 04:43:56.470 | -5.336983 |
| 6 | 2019-01-17 04:43:58.770 | -5.807174 |
+ -+            -+     -+

相关问题 更多 >

    热门问题