python - 如何将具有连续时间数字索引的 Pandas 数据帧中的数据重新采样、聚合值到离散整数时间?
问题描述
假设我有一个数据框,其中索引是一个浮点数,表示连续时间(例如,以秒为单位)。我有一个带有 0 和 1 的值列,指示事件何时发生。我想获得每整秒间隔的事件数。如果索引是 DateTime 格式,我可以使用df.resample
withsum
作为聚合函数。
如何使用浮点索引执行此操作?
示例代码:
import pandas as pd
import numpy as np
df = pd.DataFrame(data={'value': np.random.randint(0,2,25)}, index = np.arange(0,5,0.2))
解决方案
尝试这个:
df = pd.DataFrame(data={'value': np.random.randint(0,2,25)}, index = np.arange(0,5,0.2))
df.index = pd.to_datetime(df.index, unit='s', errors='coerce')
df = df.resample('1s').agg({'value': 'sum'})
df.index = df.index.time
print(df)
value
00:00:00 3
00:00:01 2
00:00:02 0
00:00:03 2
00:00:04 3
推荐阅读
- python - 嵌入图像未在不和谐 python 中加载
- python - PyQGIS:通过多个表达式选择
- python - 仅使用不记名令牌的 Python gRPC 客户端请求
- python - 在 json 中传递 00 会产生错误的请求
- javascript - document.execCommand() 不会粘贴呈现的 html
- javascript - 安排一个 google sheet 脚本
- android - viewpager 向后滑动后,textview 内容正在修剪
- c# - 如何使用 Linq C# 将字符串转换为十进制以进行求和
- selenium-ide - 是 selenium IDE 测试用例,关键字驱动测试方法的一个例子
- select - 如何在项目中获取 v-select 项目?