1.  学校气象社团的小丽同学收集了当地 2023 年全年的天气数据,数据存储在“天气数据.xlsx”文件中,部分数据如图a所示。

图a

为分析该年部分气温情况,编写 Python程序,请回答下列问题:

(1) 计算 2023年的日均气温, 输出全年日均气温的最高值及出现日均气温最高值的所有日期,输出结果如图b所示。

图b

实现该功能的程序如下,请在划线①处填入合适的代码。

划线②处应选填入的代码为(单选,填字母)。

A .df1 B .df1.values C .df1.index

import pandas as pd

df=pd.read_excel("    ①    ")

df["日均温"]=(df["最高气温℃"]+df["最低气温℃"])/2

df1=df.sort_values("日均温",ascending=False).日均温.head(1)

Max=    ②

date=[ ]

for i in range(len(df)):

 if df.at[i,"日均温"]==Max:

 date.append(df.at[i,"日期"])

print("日均温最高值:"Max,"℃")

print("日期:",date)

(2) 统计月平均气温(当月每天日均气温的平均),并绘制如图c所示的线形图,实现该功能的程序如下,请在划线③、④处填入合适的代码。

图c

df["月份"]=""

for j in range(len(df)):

 df.at[j,"月份"]=df.at[j,"日期"][5:7]

df2=df.groupby("月份",as_index=True).③

plt.plot(④,df2["日均温"],label="月均温" )

plt.xlabel("月份")

plt.ylabel("温度℃")

plt.legend()

plt.show()

【考点】
编程处理数据与可视化; 表格数据的图表呈现;
【答案】

您现在未登录,无法查看试题答案与解析。 登录
综合题 普通
能力提升
换一批
1.  某省2023年全年气象灾害预警数据保存在文件“qxyj.xlsx”中,部分数据如图a所示,编写Python程序,统计全年发布次数最多的5种气象预警。

图a

#导入模块略

df=pd.read_excel("qxyj.xlsx") #读取文件中的数据

(1) 整理数据,删除多余列,划线处代码正确的是:(    )(单选,填字母)

df=df.drop(["预警发布单位","预警发布时间"],____)#删除列

A. ascending=True B. index=True C. axis=0 D. axis=1
(2) 为统计每种气象的预警次数,划线处代码正确的是:____

df_g=df.groupby("预警名称",as_index=False).____ #分组并统计预警次数

df_s= df_g.sort_values("次数"ascending=False) #按"次数"降序排序

A. sum( ) B. count( ) C. min( ) D. mean( )
(3) 排序后给数据增加“预警等级”列,按照预警名称中的“红橙黄蓝”分别设置等级1234,输出结果如图 b 所示。划线处代码正确的是:(    )

图b

df_s["预警等级"]=0#插入新的"预警等级"列,默认值为0

for i in range(len(df_s)):

 s=

 if s[2]=="红":

 df_s.at[i,"预警等级"]=1

 elif s[2]=="橙":

 df_s.at[i,"预警等级"]=2

 elif s[2]=="黄":

 df_s.at[i,"预警等级"]=3

 elif s[2]=="蓝":

 df_s.at[i,"预警等级"]=4

print(df_s)

df_s=df_s.head(5)

A. df_s[i,"预警名称"] B. df_s.at[i,"预警名称"] C. df[i,"预警名称"] D. df.at[i,"预警名称"]
(4) 统计全年发布次数最多的5种气象预警,建立图表,如图c所示。请在程序划线处填写合适的代码。

图c

x=df_s.预警名称

y=

plt.bar(x,y) #绘制柱形图

plt.title('发布次数最多的 5 种气象预警')

plt.show() #显示图表

综合题 普通
2. 某地气象站每3小时记录一次数据,现收集了该地区2022年全年的天气数据,数据按时间日期顺序存储在“weather.xlsx”文件中,部分数据如图a所示。

图 a

图 b

统计全年每月降水天数(当日总降水量大于 0 即计入降水天数),编写 Python 程序,回答下列问题:

(1) 求每日总降水量并输出,结果如图b所示,部分程序代码如下,则划线处可行的是         (单选,填字母) 。

import pandas as pd

df=pd.read_excel ("weather.xlsx")

df1=                    

print(df1)

A. df.groupby("降水量",as_index= True). 日期.sum() B. df.groupby("降水量",as_index=False). 日期.sum() C. df.groupby("日期",as_index=False).降水量.sum() D. df.groupby("日期",as_index=True).降水量.sum()
(2) 统计每月降水天数,绘制柱形图如图 c 所示。程序代码如下,请在划线处填入合适的代码。

import matplotlib.pyplot as plt

plt.rcParams['font.family']='SimHei'  #设置图表中的中文字体

days=[31,28,31,30,31,30,31,31,30,31,30,31]   #2022 年每月天数

rain_days=[0]*12

begin=0

for m in range(12):

for d in range(begin, ):

if df1.at[d,"降水量"]>0:

begin+=days[m]

x=[i+1 for i in range(12)]

y=rain_days

plt.bar ( , label="降水天数") plt.xticks(x)    #设置横坐标刻度

plt.legend()

plt.show ()

(3) 已知全国月均降水天数约为11天,则超过全国月均降水天数的月份共有 个。

图 c

综合题 困难