You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

按16:00-次日15:59自定义日周期排序推特时间数据的技术请求

调整推特数据统计周期适配纽交所交易时段的解决方案

我来帮你搞定这个统计周期调整的问题,适配纽交所16:00 UTC至次日15:59 UTC的时段其实很简单,核心思路是给时间戳做个偏移,让目标周期对齐到自然日的分组逻辑上。下面用Python的pandas工具来实现,步骤清晰易懂:

步骤1:加载数据并标准化时间格式

首先把你的CSV数据读入pandas,并确保Datetime_UTC字段被正确解析为datetime类型:

import pandas as pd

# 读取数据(假设数据存在CSV文件中)
df = pd.read_csv('your_twitter_data.csv', parse_dates=['Datetime_UTC'], infer_datetime_format=True)

步骤2:创建适配纽交所周期的分组日期

我们需要把每个UTC时间减去16小时,这样原时段16:00 UTC就会变成当天的00:00,原时段次日15:59 UTC会变成当天的23:59,刚好对应自然日的分组边界。生成一个新的Trade_Date字段来作为分组依据:

# 减去16小时,提取日期部分作为分组键
df['Trade_Date'] = (df['Datetime_UTC'] - pd.Timedelta(hours=16)).dt.date

举个例子验证:

  • 原时间2013-06-01 16:00:00+00:00减去16小时 → 2013-06-01 00:00:00,Trade_Date为2013-06-01
  • 原时间2013-06-02 05:00:00+00:00减去16小时 → 2013-06-01 13:00:00,Trade_Date仍为2013-06-01
  • 原时间2013-06-02 16:00:00+00:00减去16小时 → 2013-06-02 00:00:00,Trade_Date变为2013-06-02
    这样就完美把2013-06-01 16:00到2013-06-02 15:59的所有数据归到Trade_Date=2013-06-01的组里了。

步骤3:按企业和交易日期聚合统计

最后按照Company和Trade_Date分组,对Negative、Neutral、Positive、Volume做求和统计(如果需要其他统计方式,比如计数,替换成count()即可):

# 分组聚合
daily_stats = df.groupby(['Company', 'Trade_Date']).agg(
    Negative=('Negative', 'sum'),
    Neutral=('Neutral', 'sum'),
    Positive=('Positive', 'sum'),
    Volume=('Volume', 'sum')
).reset_index()

# 查看结果
print(daily_stats.head())

这样得到的daily_stats就是你想要的、按纽交所交易时段统计的每日数据啦!

内容的提问来源于stack exchange,提问作者hacker1337ninja

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 04:31:24