我有一些无法复制的数据,但我正在做一个能源管理系统的API请求,以建立一个简单的熊猫数据框架。。。当数据请求返回时,我对pd进行一次写操作_到.CSV,然后用index_col='Date', parse_dates=True
进行读取
我该如何将它合并到我的API请求中,将时间戳标记为'Date',以及parse_dates=True?(跳过对CSV的读/写数据…)
from pyhaystack.client.niagara import NiagaraHaystackSession
import pandas as pd
session = NiagaraHaystackSession(uri='http://192.x.x.x', username='username', password='password', pint=True)
op = session.nav()
op.wait()
nav = op.result
print(nav)
#Get Data for the OSA-T & convert to Pandas series:
oat = session.find_entity(filter_expr='outsideAir').result
oat_df = session.his_read_frame(oat, rng= '2017-10-01,2018-01-01').result
oat_df = pd.Series(oat_df[oat_df.columns[0]])
#Get Data for the electrical energy kWh & convert to Pandas series:
elecMeter = session.find_entity(filter_expr='elecMeter').result
elecMeter_df = session.his_read_frame(elecMeter, rng= '2017-10-01,2018-01-01').result
elecMeter_df = pd.Series(elecMeter_df[elecMeter_df.columns[0]])
#Get Data for the natural gas energy therms & convert to Pandas series:
gasMeter = session.find_entity(filter_expr='gasMeter').result
gasMeter_df = session.his_read_frame(gasMeter, rng= '2017-10-01,2018-01-01').result
gasMeter_df = pd.Series(gasMeter_df[gasMeter_df.columns[0]])
UtilityInfo = pd.DataFrame({'oat' : oat_df, 'kWh' : elecMeter_df, 'therms' : gasMeter_df})
这是我读/写CSV的地方,我希望将其合并到API请求中。。。除非这只是读/写的最佳实践???。。基本上在下面的读/写步骤之间,我不得不作弊并打开Excel来标记timestant列“Date”,我希望避免!!!你知道吗
UtilityInfo.to_csv('C:\\Python Scripts\\UtilityInfo.csv', sep=',', header=True, index=True, na_rep='N/A')
UtilityInfo = pd.read_csv('C:\\Python Scripts\\UtilityInfo.csv', index_col='Date', parse_dates=True)
可以使用
UtilityInfo.index.names=['Date']
为索引命名。你知道吗也可以使用df.reset\u索引()
好的参考号:Rename Pandas DataFrame Index
相关问题 更多 >
编程相关推荐