Menu
CoddyTech
flag Ar iconالعربيةdown icon

قراءات المستشعر

جزء من قسم البيانات والرسوم البيانية في رحلة Machine Learning على Coddy. الدرس 58 من 60.

يسجّل مستشعر درجة حرارة غرفة الخوادم كل ساعة، من الساعة 0 (منتصف الليل) إلى الساعة 23. عندما تتعذّر قراءة، يكتب -999 بدلًا منها.

يريد الفني تلخيص كل يوم مع استبعاد حالات التعطل، ورسمه مثل يوم الاثنين (اليوم 1):

مخطط خطي بعنوان درجة حرارة غرفة الخوادم: تبدأ درجة الحرارة من نحو 17 C ليلًا، ثم يرتفع الخط إلى ذروة تبلغ 29.4 C عند الساعة 14، ثم ينخفض إلى 18 C بحلول منتصف الليل

عند تجاوز 25 C، تحتاج الغرفة إلى الاهتمام.

challenge icon

التحدي

صعب

يحتوي الكود الابتدائي على قراءات لأربعة أيام في week، صف واحد لكل يوم، ويقرأ رقم يوم من 1 إلى 4.

  1. اطبع عدد القراءات الفاشلة لذلك اليوم.
  2. اطبع متوسط القراءات السليمة، مقربًا إلى منزلة عشرية واحدة باستخدام np.round، وعدد القراءات التي تتجاوز limit.
  3. اطبع الساعة الأدفأ وقراءتها.
  4. ارسم القراءات السليمة مقابل ساعاتها باستخدام صيغة fig, ax، بعنوان Server Room Temperature، وتسميتي Hour وTemperature (C).

لليوم 1، يكون الناتج الكامل كما يلي:

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]

جرّب بنفسك

import numpy as np
import matplotlib.pyplot as plt

# درجة حرارة غرفة الخوادم (C) من الساعة 0 إلى 23، صف واحد لكل يوم؛ تعني -999 أن قراءة درجة الحرارة فشلت
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

# اكتب الكود الخاص بك أدناه
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس البيانات والرسوم البيانية

تدرّب بنفسك: مترجم Python عبر الإنترنت