如何在python中设置时间变量,季节性

时间:2019-01-20 19:56:44

标签: python pandas time-series

我现在正在学习python几天,我很难设置一个变量作为时间变量。如果有人可以帮助我,我将不胜感激。

变量的类型为:pandas.core.series.Series 如下所示:

2018S1;
2017S2;
2017S1

想法是python将其识别为时间数据,以便我可以对其进行绘图并在回归中使用它。我在论坛和互联网上进行了搜索,但没有发现任何类似的问题。

亲切的问候

2 个答案:

答案 0 :(得分:1)

您的数据似乎由年份和季节组成。为了进行绘图,您可以在季节的中间使用日期(使用典型的年,月,日)。

有一篇帖子,有人根据日期确定季节,可能会给您一些想法Determine season given timestamp in Python using datetime

答案 1 :(得分:0)

对于熊猫时期,请看here

  • 如果最后一个数字表示月份,请使用pd.Period(pp,freq='M')
  • 如果最后一个数字表示四分之一,请使用pd.Period(pp,freq='Q')

以下解决方法会生成一个pandas系列,可用于回归分析及更多操作:

A = np.array(['2018S1', '2017S2', '2017S1'])
periods = []

for a in A:
    yr =a[0:4]
    ss =a[-1]
    pp = yr + '-' + ss
    periods.append(pd.Period(pp,freq='Q') )

ts = pd.Series(np.random.randn(3), periods)
ts

对于宿舍,我们得到:

2018Q1    0.531245
2017Q1   -0.126469
2017Q1    0.250046
Freq: Q-DEC, dtype: float64

在一个月的情况下,我们得到:

2018-01    0.098571
2017-02    1.407439
2017-01   -0.406087
Freq: M, dtype: float64