我有一个MessageProducer messageProducer = session.createProducer(Queue, Queue2);
messageProducer.send(Queue, objectMessage);
messageProducer.send(Queue2, objectMessage2);
的加密数据,正在尝试查看价格/价格在一天/一周的某个特定时间以另一种方式移动。我有时间戳,是星期几,并且关闭了以前的时间戳,就像下面的示例数据一样。
df
我的第一个问题是时间戳令人困惑。当我从不同的交易所获取数据时,它们之间的时间戳是不同的,因此我放弃了尝试标准化Date Day Return
2019-06-22 01:00:00 Saturday -0.046910
2019-06-22 07:00:00 Saturday -0.018756
2019-06-22 13:00:00 Saturday 0.036842
2019-06-22 19:00:00 Saturday 0.000998
2019-06-23 01:00:00 Sunday 0.017672
2019-06-23 07:00:00 Sunday 0.021102
2019-06-23 13:00:00 Sunday -0.014737
2019-06-23 19:00:00 Sunday -0.039085
2019-06-24 01:00:00 Monday 0.009690
2019-06-24 07:00:00 Monday -0.004367
2019-06-24 13:00:00 Monday -0.005342
2019-06-24 19:00:00 Monday 0.001060
2019-06-25 01:00:00 Tuesday -0.027738
2019-06-25 07:00:00 Tuesday -0.001599
2019-06-25 13:00:00 Tuesday 0.006247
2019-06-25 19:00:00 Tuesday -0.036937
2019-06-26 01:00:00 Wednesday -0.064866
2019-06-26 07:00:00 Wednesday 0.012319
列的想法,现在就像一个新的列来为每天的时间段编号一样。因此,每个星期六的前6小时为Date
,依此类推。所以最后我将有28个不同的类别(4个时间段x一周中的7天)。
然后我想要Saturday_1
这个新列,并且已经将每个类别的平均回报返回给我。
欢呼
答案 0 :(得分:2)
假设您的Day
列正确:
# ignore if already datetime
df.Date = pd.to_datetime(df.Date)
# hour block in the day
s = df.Date.dt.hour//6 + 1
# new column
df['group'] = df['Day'] + '_' + s.astype(str)
输出:
0 Saturday_1
1 Saturday_2
2 Saturday_3
3 Saturday_4
4 Sunday_1
5 Sunday_2
6 Sunday_3
7 Sunday_4
8 Monday_1
9 Monday_2
10 Monday_3
11 Monday_4
12 Tuesday_1
13 Tuesday_2
14 Tuesday_3
15 Tuesday_4
16 Wednesday_1
17 Wednesday_2
Name: group, dtype: object