簡體   English   中英

如何計算5分鍾間隔的平均溫度?

[英]How to calculate the average temperature in 5 minute intervals?

我有一個練習題,需要一些幫助來計算 5 分鍾間隔的平均溫度。 以下是問題的說明:

.txt 文件中的第一列是以分鍾為單位的時間。 .txt 文件中的第二列是以華氏度為單位的溫度。

  • 通過對數組進行切片(也可以使用循環來完成),以 5 分鍾為間隔計算平均溫度。
  • 繪制 .txt 文件中的數據和同一圖上的平均值,x 軸為時間,y 軸為溫度。
  • 用紅色繪制 data1。
  • 用藍色繪制 data1 的 5 分鍾平均值(將它們繪制在平均值的中間,也就是 1 到 5 分鍾的平均值,在 3 分鍾處繪制)。

我主要對計算 5 分鍾間隔內的平均溫度以及如何繪制這些間隔時間平均值的平均值感到困惑。 我還將包括下面的代碼,但它缺少問題的這兩部分。

import numpy as np
import matplotlib.pyplot as plt

data = np.loadtxt("sample1.txt")    
middle_of_interval = np.average()

plt.plot(data[:,0], data[:,1], "r") 
plt.title("Temperature vs. Time")  
plt.xlabel("Time (minutes)")        
plt.ylabel("Temperature (F)")       
plt.xticks(np.arange(0, 30, 1))     
plt.yticks(np.arange(23, 27, 0.5)) 

避免在數組上循環總是一個好主意; 最好堅持切片和其他技巧。

您可以獲得數組arr的 5 個元素的移動平均值,如下所示:

avg = (arr[:-4] + arr[1:-3] + arr[2:-2] + arr[3:-1] + arr[4:]) / 5

您還可以將小型貨車與時間序列進行卷積,如下所示:

boxcar = np.ones(5) / 5
avg = np.convolve(arr, boxcar, mode='valid')

對時間序列做同樣的事情以獲得每次測量的平均時間。

  1. 提示用戶輸入華氏溫度。
  2. 使用以下公式將攝氏溫度轉換為。

    F=c×9/5+32

  3. 打印輸出。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM