python練習題之《按月份統計每月氣溫的最大值、最小值及平均值》
阿新 • • 發佈:2018-12-21
1.題目:根據csv檔案,按月份計算每個月的溫度最值和均值
2.技巧點:布林型陣列==》作為索引刪選資料
程式碼如下:
import numpy as np import matplotlib.pyplot as plt file = "./temp.csv" month_list = ["1","2","3"] # 構造月份布林型陣列 做索引篩選 def collect_process_data(): data_array = np.loadtxt(file,delimiter=',',dtype="str",skiprows=1) for month in month_list: month_array = month == data_array[:, 0] # print(month_array) #篩資料 month_temp_array = data_array[month_array][:,1] # 去除'C' clean_array = np.core.defchararray.replace(month_temp_array, "C", "") # print(clean_array) # 將str轉為float float_array = clean_array.astype(float) #取最值 max_temp = np.max(float_array) min_temp = np.min(float_array) mean_temp = np.mean(float_array) print('第{}月份氣溫最低為:{:.2f}'.format(month, min_temp)) print('第{}月份氣溫最高為:{:.2f}'.format(month, max_temp)) print('第{}月份氣溫平均為:{:.2f}'.format(month, mean_temp)) print("===================================================================") collect_process_data()