rubyarrow 2022-04-19 00:26 采纳率: 100%
浏览 250
已结题

对于一个时间序列数据集,取样间隔不同,如何变成等间隔的?或者有更好的数据集代替吗?

现在正在做预测算法,需要找服务器的CPU使用率数据(不同时间点的CPU使用率,时间间隔相同)。现在我找到了阿里巴巴集群的公开数据集https://gitcode.net/mirrors/alibaba/clusterdata/-/blob/master/cluster-trace-v2018/trace_2018.md
但是这个数据集的取样间隔不同,数据格式如下图所示

img

由于时间预测算法需要用时间间隔相等的数据,怎么把这种数据处理成等间隔的?或者有没有其他的数据集可以替代呢?

  • 写回答

2条回答 默认 最新

  • 关注

    序列数据先按时间排序,如果已经是排序则跳过这一步
    找到要计算的等间隔时间在数据集中的前后数据,用前一数据 + (前后数据之差 / 前后时间之差 * 前一时间与要计算时间之差) 即可处理成等间隔的数据
    python代码参考

    li=[
        [0,12],
        [620,9],
        [810,12],
        [830,13],
        [1100,10],
        [1550,19],
        [1620,17],
        [2480,16],
        [4070,28],
        [4400,3],
        [4450,4],
        [5140,8],
        [5330,11],
        [7060,58],
        [7240,18]
    ]
    sleep = 500 #等间隔值
    time = 0
    i = 0
    while time<=li[-1][0]:
        while time>=li[i][0]:
            i+=1
        z = li[i][1] - li[i-1][1]
        p = li[i][0] - li[i-1][0]
        t = time - li[i-1][0]
        v = li[i-1][1] + z / p * t
        print(time,v)
        time += sleep
    

    img

    如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
    1人已打赏
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 4月27日
  • 已采纳回答 4月19日
  • 创建了问题 4月19日

悬赏问题

  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记