Advertisement

实战三十五:机器学习xgboost的降雨量预测 完整代码数据 视频讲解

阅读量:

该视频讲解了使用Python中的XGBoost模型进行降雨量预测的完整过程。视频中展示了如何利用混淆矩阵评估模型性能,并提供了相应的代码示例。代码包括数据加载、预处理(如填充缺失值)、特征编码以及可视化分析等步骤。通过这些方法,可以实现对降雨量的有效预测,并通过图表展示预测结果与实际值的对比情况。

课程演示:...详细代码与数据集_哔哩哔哩_bilibili

数据:

结果混淆矩阵:

代码:

复制代码
 ##  基础函数库

    
 import numpy as np 
    
 import pandas as pd
    
  
    
 ## 绘图函数库
    
 import matplotlib.pyplot as plt
    
 import seaborn as sns
复制代码
 ## 我们利用Pandas自带的read_csv函数读取并转化为DataFrame格式

    
  
    
 data = pd.read_csv('train.csv')
    
 ## 进行简单的数据查看,我们可以利用 .head() 头部.tail()尾部
    
 data = data.fillna(-1)
    
 data.head()
复制代码
 ## 利用value_counts函数查看训练集标签的数量

    
 pd.Series(data['RainTomorrow']).value_counts()
    
 ## 对于特征进行一些统计描述
    
 data.describe()
复制代码
 plt.figure(figsize=(10,10))

    
 plt.subplot(1,2,1)
    
 plt.title('RainTomorrow')
    
 sns.barplot(x = pd.DataFrame(tlog['Location']).sort_index()['Location'], y = pd.DataFrame(tlog['Location']).sort_index().index, color = "red")
    
 plt.subplot(1,2,2)
    
 plt.title('Not RainTomorrow')
    
 sns.barplot(x = pd.DataFrame(flog['Location']).sort_index()['Location'], y = pd.DataFrame(flog['Location']).sort_index().index, color = "blue")
    
 plt.show()
复制代码
 plt.figure(figsize=(10,2))

    
 plt.subplot(1,2,1)
    
 plt.title('RainTomorrow')
    
 sns.barplot(x = pd.DataFrame(tlog['RainToday'][:2]).sort_index()['RainToday'], y = pd.DataFrame(tlog['RainToday'][:2]).sort_index().index, color = "red")
    
 plt.subplot(1,2,2)
    
 plt.title('Not RainTomorrow')
    
 sns.barplot(x = pd.DataFrame(flog['RainToday'][:2]).sort_index()['RainToday'], y = pd.DataFrame(flog['RainToday'][:2]).sort_index().index, color = "blue")
    
 plt.show()
复制代码
 ## 把所有的相同类别的特征编码为同一个值

    
 def get_mapfunction(x):
    
     mapp = dict(zip(x.unique().tolist(),
    
      range(len(x.unique().tolist()))))
    
     def mapfunction(y):
    
     if y in mapp:
    
         return mapp[y]
    
     else:
    
         return -1
    
     return mapfunction
    
 for i in category_features:
    
     data[i] = data[i].apply(get_mapfunction(data[i]))
    
     ## 编码后的字符串特征变成了数字
    
  
    
 data['Location'].unique()

完整代码:[(六个关键信息) 雨水监测与预警系统- Python相关资源包 - 官方文档中心]( "6条消息 降雨预测rar - 雨水监测与预警系统- Python相关资源包 - 官方文档中心) )

全部评论 (0)

还没有任何评论哟~