Skip to content

Commit 5720c1e

Browse files
committed
Complete Module4
1 parent 33dffad commit 5720c1e

File tree

3 files changed

+74
-0
lines changed

3 files changed

+74
-0
lines changed

sensor/humidity_info.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
from house_info import HouseInfo
2+
from datetime import date, datetime
3+
4+
5+
class HumidityData(HouseInfo):
6+
def _convert_data(self, data):
7+
recs = []
8+
for rec in data:
9+
recs.append(float(rec) * 100)
10+
return recs
11+
12+
def get_data_by_area(self, rec_area=0):
13+
recs = super().get_data_by_area("humidity", rec_area)
14+
return self._convert_data(recs)
15+
16+
def get_data_by_date(self, rec_date=date.today()):
17+
recs = super().get_data_by_date("humidity", rec_date)
18+
return self._convert_data(recs)

sensor/particle_count_info.py

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
from house_info import HouseInfo
2+
from datetime import date, datetime
3+
4+
5+
class ParticleData(HouseInfo):
6+
def _convert_data(self, data):
7+
recs = []
8+
for rec in data:
9+
recs.append(float(rec))
10+
return recs
11+
12+
def get_data_by_area(self, rec_area=0):
13+
recs = super().get_data_by_area("particulate", rec_area)
14+
return self._convert_data(recs)
15+
16+
def get_data_by_date(self, rec_date=date.today()):
17+
recs = super().get_data_by_date("particulate", rec_date)
18+
return self._convert_data(recs)
19+
20+
def get_data_concentrations(self, data):
21+
particulate = {
22+
"good": 0,
23+
"moderate": 0,
24+
"bad": 0
25+
}
26+
for rec in data:
27+
if rec <= 50:
28+
particulate["good"] = particulate["good"] + 1
29+
elif rec <= 100:
30+
particulate["moderate"] = particulate["moderate"] + 1
31+
else:
32+
particulate["bad"] = particulate["bad"] + 1
33+
return particulate

sensor/sensor_app.py

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@
33
from house_info import HouseInfo
44
from datetime import date, datetime
55
from temperature_info import TemperatureData
6+
from humidity_info import HumidityData
7+
from statistics import mean
8+
from particle_count_info import ParticleData
69

710
##############################
811
# Do not remove these two lines
@@ -34,5 +37,25 @@
3437
print("\tMaximum: {0}, Minimum: {1} temperatures".format(max(recs), min(recs)))
3538

3639
# Module 4 code here:
40+
humidity_data = HumidityData(data)
41+
recs = humidity_data.get_data_by_area(rec_area=test_area)
42+
print("\nHouse Humidity sensor records for area {} = {}".format(test_area, len(recs)))
43+
print("\tAverage: {} humidity".format(mean(recs)))
44+
recs = humidity_data.get_data_by_date(rec_date=test_date)
45+
print("House Humidity sensor records for date: {} = {}".format( test_date.strftime("%m/%d/%y"), len(recs)))
46+
print("\tAverage: {} humidity".format(mean(recs)))
3747

3848
# Module 5 code here:
49+
particle_data = ParticleData(data)
50+
recs = particle_data.get_data_by_area(rec_area=test_area)
51+
print("\nHouse Particle sensor records for area {} = {}".format(test_area, len(recs)))
52+
concentrations = particle_data.get_data_concentrations(data=recs)
53+
print("\tGood Air Quality Recs: {}".format(concentrations["good"]))
54+
print("\tModerate Air Quality Recs: {}".format(concentrations["moderate"]))
55+
print("\tBad Air Quality Recs: {}".format(concentrations["bad"]))
56+
recs = particle_data.get_data_by_date(rec_date=test_date)
57+
print("\nHouse Particle sensor records for date: {} = {}".format( test_date.strftime("%m/%d/%y"), len(recs)))
58+
concentrations = particle_data.get_data_concentrations(data=recs)
59+
print("\tGood Air Quality Recs: {}".format(concentrations["good"]))
60+
print("\tModerate Air Quality Recs: {}".format(concentrations["moderate"]))
61+
print("\tBad Air Quality Recs: {}".format(concentrations["bad"]))

0 commit comments

Comments
 (0)