天池XGBoost,重写柱状图代码,标签编码

天池XGBoost

地址

重写柱状图代码:我没考虑复杂度,只考虑直观理解

原文统计地点是否降雨来画柱状图实在是太麻烦了,我重写了一下。最麻烦的就是数据处理。我的思路是:

  1. 首先取下雨的全部数据data[data['RainTomorrow'] == 'Yes']

  2. 然后对地点进行分组groupby('Location').size()。不加size()没输出的,没加的结果:

    <pandas.core.groupby.generic.DataFrameGroupBy object at 0x000001FEF989EEE0>
    
  3. 最后加上列数量和列名reset_index(name='Count')。这句不加的结果是这样:

    Location
    Adelaide         513
    Albany           665
    Albury           454
    AliceSprings     169
    BadgerysCreek    425
    
  4. 总结123,下雨和没下雨的数据就为:

    data_LocYes = data[data['RainTomorrow'] == 'Yes'].groupby('Location').size().reset_index(name='Count')
    data_LocNo = data[data['RainTomorrow'] == 'No'].groupby('Location').size().reset_index(name='Count')
    

    输出结果:

    	Location	Count
    0	Adelaide	513
    1	Albany	665
    2	Albury	454
    3	AliceSprings	169
    4	BadgerysCreek	425
    
  5. 然后进行可视化:

    plt.figure(figsize=(15,15))
    
    plt.subplot(1,2,1)
    plt.title('RainTomorrow')
    sns.barplot(y = data_LocYes['Location'], x = data_LocYes['Count'], color = "red")
    
    plt.subplot(1,2,2)
    plt.title('Not RainTomorrow')
    sns.barplot(y = data_LocNo['Location'], x = data_LocNo['Count'], color = "blue")
    
    plt.show()
    

在这里插入图片描述

标签编码

感觉官方少了一句标签编码的代码,不然会报错

data['ColumnName'] = data['ColumnName'].map({'Yes': 1, 'No': 0})
data['ColumnName'] = data['ColumnName'].apply(lambda x: 1 if x == 'Yes' else 0) # 或者这一句
  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值