【问题标题】:Calculate the mean each day based on per minute data with differing lengths of per min. data根据每分钟不同长度的每分钟数据计算每天的平均值。数据
【发布时间】:2019-07-03 03:47:27
【问题描述】:

我有两个数组,日期和温度。我想计算每天的平均温度。有细微的观察,它并不像每 1,440 个值循环和平均那么简单。传感器打开以随机记录温度。一天可以有 8 分钟的观察时间或 1,440 分钟。因此,我将不得不每天迭代。

数据: 两个等长的 Numpy 数组:

dates = ['2017-10-24 06:18:00.000' '2017-10-24 06:19:00.000' '2017-10-24 06:20:00.000' ... '2018-11-23 16:56:00.000' '2018-11-23 16:57:00.000' '2018-11-23 16:58:00.000']
temp = [1 2 3 ... 5 2 9]

我认为我需要选择日期中的“天”值并在 +1 天之前对其进行迭代

伪代码:

AmountOfDays = max(dates.%d)-min(dates.%d)
day_index = 0
for i in days:
    for j in AmountOfDays
        np.mean(temp)

【问题讨论】:

  • 你不想使用 pandas 吗?

标签: python numpy time-series mean


【解决方案1】:

使用熊猫:

import numpy as np
import pandas as pd
df = pd.DataFrame({'date': np.array(dates, dtype=np.datetime64), 'temp': temp})
df.groupby(df.date.dt.date)['temp'].mean()

【讨论】:

  • 我不希望其余代码不使用 pandas,但我会尝试实现这一点。干杯。 @josemz
猜你喜欢
  • 1970-01-01
  • 2019-12-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-12-18
  • 2017-03-22
  • 1970-01-01
相关资源
最近更新 更多