大数跨境
0
0

Python编程入门系列课程—10湿度对体感温度的影响探究

Python编程入门系列课程—10湿度对体感温度的影响探究 蘑菇云创造
2021-05-28
1
导读:用Python进行科学探究教程来啦!

点击 蘑菇云创造 关注我们


第十课 湿度对体感温度的影响探究


系列课程:


一、学习背景



经过前面三个单元的学习,我们已经掌握了利用python语言来绘制图形、设计游戏、制作图形界面等。事实上,python语言功能强大,除了上述的内容之外,我们还能利用python语言做许多事情。在本单元,我们将结合python对数据进行处理与分析,来解决生活中的一些实际问题。


二、学习目标



本实践项目通过编写python程序来探究湿度对体感温度的影响。


知识目标:

1、了解数据处理的一般过程

2、理解数据采集及常见的方法

3、理解数据整理


技能目标:

1、掌握利用软件工具对数据进行处理的方法


三、学习准备



1、电脑

2、mind+编程软件


核心概念

1)数据处理的一般过程

数据采集+数据整理+数据可视化+数据分析


2)数据采集

数据采集即根据需求,采用适当的方法和工具获取所需的数据。数据采集是数据处理的第一步,它为数据处理提供必要的素材。不同的数据来源会有不同的采集方法,需要根据不同的数据来源和表现形式,采用不同的采集方法和工具。常用的采集方法包括传感器采集和网络采集等。


3)数据整理

数据整理就是通过去重、补漏、和勘误等操作,删除重复数据、补全缺失数据和修改错误数据,并对数据进行统一和标准化处理,以确保数据的相关性和准确性。


四、学习实践



想一想

 

    在炎热的夏季,很多人都会觉得闷热难忍,身体乏力,而在冬季,很多人又会觉得潮湿阴冷,大多数人认为这是“环境温度”在作祟,真的是这样吗?


    其实,影响我们身体感觉的并不仅仅是环境温度,空气湿度也是造成这一现象的主要原因。




在本项目中,我们将分两步,来探究一下空气湿度对体感温度的影响到底是怎样的。

1、探究低温时空气相对湿度对体感温度的影响

2、探究高温时空气相对湿度对体感温度的影响

 

阅读材料

空气湿度与相对湿度

空气湿度是表示空气中水汽含量和湿润程度的气象要素。在一定的温度下,在一定体积的空气里含有的水汽越少,则空气越干燥;水汽越多,则空气越潮湿。湿度有三种基本形式,即水汽压、相对湿度、露点温度日常生活中我们常用相对湿度来表示空气湿度。

相对湿度为100%的空气是饱和的空气。相对湿度是50%的空气含有达到同温度的空气的饱和点的一半的水蒸气。相对湿度超过100%的空气中的水蒸气一般凝结出来。


阅读材料

体感温度

体感温度(英语:apparent temperature)是指人体所感受到的冷暖程度,转换成同等之温度,会受到气温风速相对湿度的综合影响。体感温度并非室温,在同样的室温下,湿度不同,体感温度也不相同。



任务1:探究低温时相对湿度对体感温度的影响


在这个任务中,我们将探究在冬天低温情况下,相对湿度与体感温度之间的关系。通过它,我们可以了解数据处理的一般过程以及数据采集的概念和方式。为此,我们将分四步进行探究。首先是采集数据,接着整理收集到的数据,之后通过编写程序将数据以图表形式展现出来,最后观察图表并分析数据得出结论。


1、数据采集

在这个项目中,我们将重点对环境温度、空气的相对湿度以及体感温度的数据进行采集,并记录在表格中(csv表格见附录1)。其中,体感温度的数据通过公式计算得出(见附录1)。



2、数据整理

这里,经过观察,我们的表格数据没有重复值和错误,故无需再进行数据整理。


3、数据可视化

为了便于对数据进行读取和分析,我们通过编写程序将采集整理好的数据以图表形式呈现出来。


这里我们将采用顺序结构的方式编写程序。具体流程如下:



在正式编写程序代码之前,我们首先要创建一个项目文件及python程序文件。


STEP1:创建与保存项目文件

    启动Mind+,另存项目并命名为“探究湿度对体感温度的影响”。


STEP2:创建与保存python文件

    创建一个python程序文件“任务一.py”,双击打开。


STEP3:导入表格文件(见附录1)



STEP4:安装库

(1)点击库管理



(2)安装matplotlib库




(3)安装pandas库



STEP5:编写程序


# -*- coding: utf-8 -*-

import pandas as pd#导入pandas库并用pd来表示

import matplotlib.pyplot as plt #导入matplotlib库中的函数集合

lowtemp = pd.read_csv("低温表(3℃).csv",encoding='gb18030')#读取表格数据

plt.rcParams['font.sans-serif'] = ['SimHei']#设置中文字体

plt.title("3℃时湿度对体感温度的影响")#绘制标题

plt.xlabel("湿度")#绘制x轴标签

plt.ylabel("体感温度")#绘制y轴标签

plt.scatter(lowtemp.iloc[:,0],lowtemp.iloc[:,1])#绘制散点图

plt.show()#显示图像



STEP6:运行程序


    运行程序,我们看到csv表格中的数据以散点图的形式呈现了出来。图上,横轴表示湿度,纵轴表示体感温度。



4、数据分析

    观察图表并分析数据,我们发现,在温度较低,只有3℃的时候,相对湿度越高,体感温度越低,因而会感觉更加湿冷。


Pandas链接

Pandas是Python第三方库,提供高性能易用数据类型和分析工具。

read_csv()函数

功能说明    read_csv()函数能读取导入的csv格式的表格数据

使用方法    pandas.read_csv(“表格名称”)

举例说明    程序中,

lowtemp = pd.read_csv("低温表(3℃).csv",encoding='gb18030')#读取表格数据

表示读取名为"低温表(3℃).csv"的表格数据,并存储在变量lowtemp中,同时将文件编码格式改为gb18030。

 

iloc[]方法

功能说明    iloc[]方法能用来提取数据

使用方法    对象.iloc[行数据,列数据],这里“,”前表示提取行数据,“,”后表示提取列数据。

举例说明    程序中,

plt.scatter(lowtemp.iloc[:,0],lowtemp.iloc[:,1])#绘制散点图

其中,“lowtemp.iloc[:,0]”表示提取表格第一列所有行的数据(索引从0开始,实际为表格第一列),“lowtemp.iloc[:,1]”表示提取表格第二列所有行的数据,这里的“:”表示提取行或列中的所有数据。



Matplotlib链接

matplotlib是python上的一个2D绘图库,通过它可以在画出很多高质量的图像。而matplotlib.pyplot则可以提供一个类似matlab的绘图框架。在使用时,我们常常通过plt来简化表示。

rcParams[]用法

功能说明    rcParams[]能用来设置图像中的属性,比如窗体大小,线条宽度,颜色,样式,字体等。

使用方法    plt.rcParams[]

举例说明    程序中,

plt.rcParams['font.sans-serif'] = ['SimHei']#设置中文字体

表示将图表中的字体设置为中文。

 

title()函数

功能说明    title()函数能设置图像的标题。

使用方法    plt.title()

举例说明    程序中,

plt.title("3℃时湿度对体感温度的影响")#绘制标题

表示设置图像的标题“3℃时湿度对体感温度的影响”。

 

xlabel()函数与ylabel()函数

功能说明    xlabel()函数与ylabel()函数能设置图像的x轴和y轴标签。

使用方法    plt.xlabel(),plt.ylabel()

举例说明    程序中,

plt.xlabel("湿度")#设置x轴标签

plt.ylabel("体感温度")#设置y轴标签

表示设置图像的x轴标签为“湿度”,y轴标签为“体感温度”。

 

scatter()函数

功能说明    scatter()函数能绘制散点图。

使用方法    plt.scatter(x,y,可选参数),其中x和y分别为绘制散点图的横轴和纵轴,可选参数有很多,这里我们不一一介绍了

举例说明    程序中,

plt.scatter(lowtemp.iloc[:,0],lowtemp.iloc[:,1])#绘制散点图

表示以表格文件的第一列和第二列数据分别作为横轴和纵轴来绘制散点图。

 

show()函数

功能说明    show()函数能将绘制的图像显示出来

使用方法    plt.show()

举例说明    程序中,

plt.show()#显示图像

表示将绘制的散点图显示出来。


任务2:探究高温时相对湿度对体感温度的影响


在这个任务中,我们将探究在夏季高温情况下,相对湿度与体感温度之间的关系。为此,我们依旧将分四步进行探究。首先是采集数据,接着整理收集到的数据,之后通过编写程序将数据以图表形式可视化出来,最后观察图表并分析数据得出结论。


1、数据采集

在这个任务中,我们将通过同样的方式对环境温度、空气的相对湿度以及体感温度的数据进行采集。并将得到数据保存在csv表格文件中。(见附录1)。



2、数据整理

这里,经过观察,高温时的表格数据没有重复值和错误,故也无需再进行数据整理。


3、数据可视化

为了便于对数据进行读取和分析,我们依旧通过编写程序将采集整理好的数据以图表形式呈现出来。


STEP1:创建与保存python文件

创建一个python程序文件“任务二.py”,双击打开。


STEP2:导入数据文件(见附录1)




STEP3:编写程序


# -*- coding: utf-8 -*-

import pandas as pd#导入pandas库并用pd来表示

import matplotlib.pyplot as plt #导入matplotlib库中的函数集合

hightemp = pd.read_csv("高温表(33.3℃).csv",encoding='gb18030')#读取表格数据

plt.rcParams['font.sans-serif'] = ['SimHei']#设置中文字体

plt.title("33.3℃时湿度对体感温度的影响")#绘制标题

plt.xlabel("湿度")#绘制x轴标签

plt.ylabel("体感温度")#绘制y轴标签

plt.scatter(hightemp.iloc[:,0],hightemp.iloc[:,1])#绘制散点图

plt.show()#显示图像


STEP4:运行程序


运行程序,我们看到csv表格中高温情况下的数据以散点图的形式呈现了出来。图上,横轴表示湿度,纵轴表示体感温度。



4、数据分析

观察图表并分析数据,我们发现,在温度较高,有33.3℃的时候,相对湿度越高,体感温度越高,因而会感觉更加闷热。


小结

湿度对人的体感温度有很大的影响。在夏季环境温度较高时,湿度越高,体感温度越高,人会感觉越闷热。在冬季环境温度较低时,湿度越高,体感温度则越低,人会感觉越阴冷。


五、巩固提高


 

项目回顾

本节课我们探究了低温和高温情况下湿度对人体感温度的影响,并利用pandas和matplotlib库将数据以图表形式呈现出来


知识小结

1、数据处理的一般过程:数据采集、数据整理、数据可视化、数据分析

2、数据采集的常见方法:传感器采集、网络采集等


项目拓展

让我们再采集春季和秋季的温湿度,用同样的方式进行试一试吧,想一想为什么春季和秋季人会感觉相对比较舒适呢?


附录

附录1 表格链接

链接:https://pan.baidu.com/s/1hD-1efWG9_xyA3WO0dAT5Q

提取码:2bbn


附录2

阅读材料

THW指数

    由于体感温度可以受到温度、湿度及风速的影响,这个数值又名“THW指数”(Temperature-Humidity-Wind Index)。1958年,美国的Paul Siple曾就风对人体的热流失成正比例。根据这说法和当时计算风寒指数的公式,简化出以下的一条算式:

 

体感温度(°C)=温度(°C)-2√风速(米/每秒)。

 

    由于和地面的距离所影响的是用温度计可以量度出来的温度差异,其差异不计算进体感温度。

 

    1984年,罗伯特·史特德曼(Robert G. Steadman)发表《体感温度的通用公式》(A universal scale of apparent temperature)如下:

 

其中AT为体感温度(°C)、T为气温(°C)、e为水汽压(hPa)、V为风速(m/sec)、RH为相对湿度(%)。

 

此公式则由中央气象局预报各地体感温度所引用。    


附录3

阅读材料

数据采集

    随着计算机技术的应用,使得数据处理的方式发生了巨大的转变,数据的处理效率也得到了极大的提高。不同的采集方式使得所获得的数据形式多种多样,要用计算机处理这些数据,需要对采集到的数据进行一定的转换。


    在开展研究时,研究工作者往往需要收集大量的数据。早期一般是通过观察、实验等人工的方式得到数据,并将其记录下来。数据量较小时,可以用传统方式进行处理。比如统计某项活动的报名情况,可以先用纸笔方式记录,再用手工方式输入到计算机中进行处理。


    现在,互联网、物联网的发展使得数据的获取方式变多、获取速度变快。传感器随时获取来自自然信源的数据,网络爬虫可在短时间内获得大量网络数据。由此,数据的获取方式已经逐渐以机器获取为主。


    传感器是一种检测装置,能感受到被测量的信息,并能将信息按一定规律转换成电信号或者其他所需形式的信息输出,通常由敏感元件和转换元件组成。在科研、生产和日常生活中,常需要利用传感器对环境中的物理量、化学量和生物量等进行感知与测量,并转换成电信号,进行适当处理后形成数据。传感器可以持续不断地采集数据。如“环境空气颗粒取样器”可以实时检测着大气中PM2.5的浓度变化,地感线圈可以记录道路上车辆的通行数据,安装在野生动物身上的GPS追踪设备可以真实记录动物的活动轨迹。

 

    除此之外,互联网也成了人们日常生活中所需数据的主要来源。如互联网上有向公众开放的数据服务,用户可以通过应用程序接口(Application Programming Interface,简称API)采集这类数据,如国家气象局网站提供了气象数据API服务,用户根据API调用规则即可采集气象数据,也有一些专业的数据平台,将收集到的数据整理后出售,用户根据项目开发需要进行购买。充分利用这些数据,从中挖掘出信息,可以为下一步的决策提供依据,从而产生更大的经济价值和社会价值。


附件下载:

文末点击“阅读原文”,下载附件。






推荐阅读:




【声明】内容源于网络
0
0
蘑菇云创造
蘑菇云是DFRobot旗下专注于AI人工智能、创客、STEAM、劳动教育的科技创新教育品牌;以为中国培养下一代科技创新人才为使命,为学校提供k12全龄段科技创新教育解决方案。
内容 969
粉丝 0
蘑菇云创造 蘑菇云是DFRobot旗下专注于AI人工智能、创客、STEAM、劳动教育的科技创新教育品牌;以为中国培养下一代科技创新人才为使命,为学校提供k12全龄段科技创新教育解决方案。
总阅读1.4k
粉丝0
内容969