pandas.get_dummies函数用法详细解答(实战)

我们现在针对实际存在的一批数据进行处理

这是数据图片
我们可以看到,像season\mnth\hr这种变量肯定是要特殊处理的因为他们之间没有偏序关系

解决思路

  1. 找到所有需要fix的变量
  2. 遍历,把每一个变量形成一个dataframe
  3. 把所有独热编码转换过的和原来的dataframe拼接起来
  4. !!!最重要的也就是把原来的那些列给删掉

实际操作

import pandas as pd


rides = pd.read_csv('data_bike/hour.csv')
rides.head()
counts = rides['cnt'][:50]

dummy_fields = ['season','weathersit','mnth','hr','weekday']
for each in dummy_fields:
    dummies = pd.get_dummies(rides[each],prefix=each)
    #这里挨个转换独热编码,转换完了一个就粘贴一个
    pd.concat([rides,dummies],axis=1)

fiels_to_drop = ['instant', 'dteday', 'season', 'weathersit','weekday', 'atemp', 'mnth', 'workingday', 'hr']
data = rides.drop(fiels_to_drop,axis=1)
发布了59 篇原创文章 · 获赞 19 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_43914889/article/details/104474764