Python时间戳作为索引

时间:2018-11-14 15:16:21

标签: python pandas matplotlib timestamp

由于我目前正在写我的论文,因此我不得不第一次使用Python。 为了使用时间戳为我的数据建立索引,我尝试了以下操作,但实际上并没有用。好吧,也许是的,但是我很愚蠢地在timestemp中访问数据。也许有人可以帮助我进行下一步操作,以便我使用时间戳访问数据,例如,可以将年度数据切成几个月。

import pandas as pd
import numpy as np
import matplotlib.pylab as plt
from matplotlib import pyplot
import datetime as dt
from matplotlib.pylab import rcParams
import datetime
rcParams['figure.figsize'] = 15, 6

data = pd.read_csv('PhelixPowerSpotHistory_2015.csv')
data['Delivery Date']=pd.to_datetime(data['Delivery Date'])
#data['Time']= pd.to_datetime(data.DeliveryDate)
#print (data.head())
print(data.head(10))
from datetime import datetime
ts = data['PriceEUR/MWh']
print(ts.head(10))


import matplotlib.pyplot as plt
plt.plot(ts)
plt.ylabel('€/MWh')
plt.xlabel('Delivery Date')
plt.xticks(np.linspace(0,8721,12))
plt.show()

我的数据头看起来像这样:

0 2015-01-01 00:00:00         25.02
1 2015-01-01 01:00:00         18.29
2 2015-01-01 02:00:00         16.04
3 2015-01-01 03:00:00         14.60
4 2015-01-01 04:00:00         14.95
5 2015-01-01 05:00:00         14.50
6 2015-01-01 06:00:00         10.76
7 2015-01-01 07:00:00         12.01
8 2015-01-01 08:00:00         12.39
9 2015-01-01 09:00:00         14.04

预先感谢

1 个答案:

答案 0 :(得分:0)

我不清楚您想要的输出是什么,但是要按日期访问数据,您可以采用以下方式:

df['delivery date'] = pd.to_datetime(df['delivery date']) # convert column to datetime object
df.set_index('delivery date', inplace=True) # set column 'date' to index

要访问一天的数据,请执行以下操作:

print (df.loc['2015-01-01 00:00:00']) 

输出:

€/MWh    25.02

并绘制:

df.plot()
plt.show()

enter image description here

所有df:

                       €/MWh
delivery date               
2015-01-01 00:00:00    25.02
2015-01-01 01:00:00    18.29
2015-01-01 02:00:00    16.04
2015-01-01 03:00:00    14.60
2015-01-01 04:00:00    14.95
2015-01-01 05:00:00    14.50
2015-01-01 06:00:00    10.76
2015-01-01 07:00:00    12.01
2015-01-01 08:00:00    12.39
2015-01-01 09:00:00    14.04