机器学习案例——生态系统蒸散速率预测

本文介绍了一种利用多源数据预测生态系统蒸散速率的方法。通过对观测站点的数据进行预处理、特征筛选、数据标准化等步骤,并采用K折交叉验证评估模型性能。

问题背景

概述

 CRO 生态系统类型若干观测站点观测的生态系统蒸散速率( ET) 数据、 气象数据和遥感获取的植被指数数据。
 通过若干观测站点的其他检测信息与 ET 数据的相关程度,来筛选可能影响 ET 值的指标。
 并通过这些相关的信息指标,进行模型的训练

在这里插入图片描述

数据集、代码、报告下载

链接:https://pan.baidu.com/s/1S_1dPt9XUnDizDBQ6sEZgg
提取码:0929
–来自百度网盘超级会员V2的分享

实验步骤分析

一、数据预处理

1、 对生态观测数据表和植被数据表进行数据预处理

(提取特征、质量控制字段特征、统一日期格式为datetime)

  #对生态观测数据表和植被数据表进行数据预处理
def tablePreProcess(CRO, VI):
    '''
    对生态观测数据表和植被数据表进行数据预处理
    '''
    # 待提取的特征
    cro_features = ['TA_F', 'TA_F_NIGHT', 'TA_F_DAY', 'SW_IN_F', 'VPD_F', 'PA_F', 'P_F', 'WS_F', 'LE_F_MDS']
    vi_features = ['Date', 'EVI_X13', 'NDVI_X13', 'GVMI_X13', 'SIWSI_X13']

    # 质量控制字段特征
    cro_features += [i + '_QC' for i in cro_features]
    cro_features.append('Date')
    cro = []
    vi = []
    for i in range(len(CRO)):
        # 统一日期格式为datetime
        CRO[i]['Date'] = pd.to_datetime(CRO[i]['TIMESTAMP'], format='%Y%m%d')
        VI[i]['Date'] = pd.to_datetime(VI[i]['Date'])
        CRO[i].reset_index(drop=False)
        VI[i].reset_index(drop=False)
        # 提取特征
        cro.append(CRO[i][cro_features])
        vi.append(VI[i][vi_features])
    return cro, vi

2、将不同站点的多个表进行纵向合并

#将来自相同观测点的生态观测数据表和植被数据表横向合并,然后将所有的表纵向合并
def mergetable(CRO, VI):
    '''
    将来自相同观测点的生态观测数据表和植被数据表横向合并,然后将所有的表纵向合并
    '''
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值