python - Python中有没有增加时间戳的函数

标签 python pandas

我们正在 ubuntu 18.04 服务器上使用 python,并将来自温度传感器的实时数据存储在 MySQL 数据库上。数据库安装在我们的服务器上。

我们想要做的是增加一个时间戳,我们以 20 分钟的间隔检索最新的值,这意味着每 20 分钟我们从 MySQL 数据库中的传感器检索最新的温度值。我们只希望间隔为 0.0、0.20、0.40。

递增示例

2019-07-26 00:00:00
2019-07-26 00:20:00
2019-07-26 00:40:00
2019-07-26 01:00:00
...
2019-07-26 23:40:00
2019-07-27 00:00:00
...
2019-07-30 23:40:00
2019-08-01 00:00:00

这是我们想要实现的基本思想,但我们知道这是一种非常糟糕的编码方式,我们想要更动态的代码。我们想象也许有一个函数,或者是我们没有想到的其他方式。基本思想如下:

for x in range (0, 24, 1)
    for y in range (0, 60, 20)
        a = pd.read_sql('SELECT temperature1m FROM Weather_Station WHERE timestamp > "2019-07-26 %d:%d:00" AND timestamp < "2019-07-26 %d:%d:00" ORDER BY timestamp DESC LIMIT 1' % (x, y, x, y+20), conn).astype(float).values

在我们的数据库中,我们可以检索传感器上的第一个和最后一个时间戳。

lastLpnTime = pd.read_sql('SELECT MAX(timestamp) FROM Raw_Data WHERE topic = "lpn1"', conn).astype(str).values
firstLpnTime = pd.read_sql('SELECT MIN(timestamp) FROM Raw_Data WHERE topic = "lpn1"', conn).astype(str).values

因此我们想象我们可以说:

从firstLpnTime到lastLpnTime,以20分钟的间隔从0.00、0.20或0.40执行此操作,从MySQL数据库检索数据

但是我们如何做到这一点呢?

最佳答案

如果您将数据加载到 pandas 数据框中,您可以使用 pd.resample 在所需的时间段内对它们进行采样。 .

关于python - Python中有没有增加时间戳的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57410313/

相关文章:

python - 如何从其他格式(例如graphml)导出sbml文件?

python - python Pandas 中的 XML 解析在一行中获取完整的标签 block

python - 在Python中滚动时使用以前的数据

python - 创建一个以另一个 DataFrame 为条件的 Pandas DataFrame

python - Pandas:对 DataFrame 的每一列进行 nansum 系列

Python 2.7/Pandas/MySQL 段错误

python - protobuf3,python - 如何将元素设置为 map<string,OtherMessage> 字典?

python - 为什么列出 `my_list+[' foo' ]` faster than ` new_list = list(my_list); python 中的 new_list.append ('foo' )`?

python - 为什么我的所有进程不是同时启动?

python - ModuleNotFoundError : No module named 'werkzeug.posixemulation'