Menu
CoddyTech

Sensormesswerte

Teil des Abschnitts Daten und Diagramme der Machine Learning-Journey von Coddy. Lektion 58 von 60.

Ein Sensor protokolliert jede Stunde die Temperatur eines Serverraums, von Stunde 0 (Mitternacht) bis 23. Wenn eine Messung fehlschlägt, schreibt er stattdessen -999.

Der Techniker möchte die Werte für jeden Tag aufsummiert haben, wobei die Ausfälle ausgelassen werden, und sie wie für Montag (Tag 1) dargestellt werden:

Ein Liniendiagramm mit dem Titel Serverraumtemperatur: Von etwa 17 C in der Nacht steigt die Linie auf einen Höchstwert von 29.4 C in Stunde 14 und fällt dann bis Mitternacht wieder auf 18 C

Bei über 25 °C muss der Raum beachtet werden.

challenge icon

Aufgabe

Schwer

Der Starter enthält unter week Messwerte für vier Tage, eine Zeile pro Tag, und liest eine Tagesnummer von 1 bis 4 ein.

  1. Gib aus, wie viele Messwerte dieses Tages fehlgeschlagen sind.
  2. Gib den Mittelwert der gültigen Messwerte, auf 1 Dezimalstelle gerundet mit np.round, sowie die Anzahl der Werte über limit aus.
  3. Gib die wärmste Stunde und ihren Messwert aus.
  4. Zeichne die gültigen Messwerte gegen ihre Stunden mit der Form fig, ax, mit dem Titel Server Room Temperature und den Beschriftungen Hour und Temperature (C).

Für Tag 1 lautet die gesamte Ausgabe:

Failed readings: 3
Average: 21.9
Hours above 25: 7
Warmest: hour 14 at 29.4
Charts drawn: 1
Title: Server Room Temperature
X label: Hour
Y label: Temperature (C)
Lines: 1
Across (x): [0, 1, 2, 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, 18, 20, 21, 22, 23]
Up (y): [17.2, 16.8, 16.5, 16.1, 16.4, 17.9, 19.6, 21.8, 23.5, 25.1, 27.9, 28.8, 29.4, 28.7, 27.2, 25.6, 23.9, 21, 19.8, 18.6, 17.9]

Probier es selbst

import numpy as np
import matplotlib.pyplot as plt

# Temperatur im Serverraum (C) für die Stunden 0 bis 23, eine Zeile pro Tag; -999 bedeutet, dass die Messung fehlgeschlagen ist
week = np.array([
    [17.2, 16.8, 16.5, -999, 16.1, 16.4, 17.9, 19.6, 21.8, 23.5, 25.1, -999,
     27.9, 28.8, 29.4, 28.7, 27.2, 25.6, 23.9, -999, 21.0, 19.8, 18.6, 17.9],
    [-999, 17.4, 17.0, 16.7, 16.6, 17.0, 18.2, 19.9, 21.5, -999, 24.6, 26.0,
     27.1, 27.8, 28.0, 28.3, 26.4, -999, 23.1, 21.7, 20.5, 19.4, 18.8, 18.1],
    [18.3, 18.0, 17.8, 17.5, 17.6, -999, -999, 20.4, 22.9, 25.3, 27.6, 29.5,
     31.0, 32.2, 32.9, 33.1, 32.4, 30.8, 28.7, 26.5, 24.6, 22.8, 21.3, 20.1],
    [16.9, 16.5, 16.2, 16.0, 15.8, 16.1, 16.9, 18.0, 19.4, 20.8, 22.3, 23.6,
     24.7, 26.2, 25.8, 25.1, 24.0, 22.6, 21.3, 20.2, 19.3, 18.5, 17.8, -999],
])
day = int(input())
limit = 25

# Schreibe deinen Code unten
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Daten und Diagramme

Übe selbstständig: Online-Python-Compiler