Python环境安装及数据基本预处理-大数据ML样本集案例实战

栏目: Python · 发布时间: 5年前

内容简介:版权声明:本套技术专栏是作者(秦凯新)平时工作的总结和升华,通过从真实商业环境抽取案例进行总结和分享,并给出商业应用的调优建议和集群环境容量规划等内容,请持续关注本套博客。QQ邮箱地址:1120746959@qq.com,如有任何学术交流,可随时联系。版权声明:本套技术专栏是作者(秦凯新)平时工作的总结和升华,通过从真实商业环境抽取案例进行总结和分享,并给出商业应用的调优建议和集群环境容量规划等内容,请持续关注本套博客。QQ邮箱地址:1120746959@qq.com,如有任何学术交流,可随时联系。版权声

版权声明:本套技术专栏是作者(秦凯新)平时工作的总结和升华,通过从真实商业环境抽取案例进行总结和分享,并给出商业应用的调优建议和集群环境容量规划等内容,请持续关注本套博客。QQ邮箱地址:1120746959@qq.com,如有任何学术交流,可随时联系。

1 Python 环境安装

Python环境安装及数据基本预处理-大数据ML样本集案例实战
Python环境安装及数据基本预处理-大数据ML样本集案例实战
Python环境安装及数据基本预处理-大数据ML样本集案例实战
  • shift + Enter :换行
  • ctrl + Enter :执行
Python环境安装及数据基本预处理-大数据ML样本集案例实战

2 Python IDE 环境安装

Python环境安装及数据基本预处理-大数据ML样本集案例实战
Python环境安装及数据基本预处理-大数据ML样本集案例实战
Python环境安装及数据基本预处理-大数据ML样本集案例实战

3 数据预处理

  • 头几行展示

    import numpy as np 
      import pandas as pd 
      import matplotlib.pyplot as plt
      %matplotlib inline
      
      from sklearn.ensemble import RandomForestClassifier
      from sklearn.cross_validation import KFold
      
      # import data
      filename= "C:\\ML\\MLData\\data.csv"
      raw = pd.read_csv(filename)
      print (raw.shape)
      raw.head()
    复制代码
Python环境安装及数据基本预处理-大数据ML样本集案例实战
  • 尾几行展示

    Python环境安装及数据基本预处理-大数据ML样本集案例实战
  • 去除空值

Python环境安装及数据基本预处理-大数据ML样本集案例实战
Python环境安装及数据基本预处理-大数据ML样本集案例实战
  • matplot列属性绘制分布

    #plt.subplot(211) first is raw second Column
      # 透明程度 (颜色深度和密度)
      alpha = 0.02
      # 指定图大概占用的区域
      plt.figure(figsize=(10,10))
      # loc_x and loc_y(一行两列第一个位置)
      plt.subplot(121)
      # scatter 散点图
      plt.scatter(kobe.loc_x, kobe.loc_y, color='R', alpha=alpha)
      plt.title('loc_x and loc_y')
      # lat and lon(一行两列第二个位置)
      plt.subplot(122)
      plt.scatter(kobe.lon, kobe.lat, color='B', alpha=alpha)
      plt.title('lat and lon')
    复制代码
Python环境安装及数据基本预处理-大数据ML样本集案例实战
  • 角度和极坐标预处理

    raw['dist'] = np.sqrt(raw['loc_x']**2 + raw['loc_y']**2)
      loc_x_zero = raw['loc_x'] == 0
      #print (loc_x_zero)
      raw['angle'] = np.array([0]*len(raw))
      raw['angle'][~loc_x_zero] = np.arctan(raw['loc_y'][~loc_x_zero] / raw['loc_x'][~loc_x_zero])
      raw['angle'][loc_x_zero] = np.pi / 2 
    复制代码
  • 时间处理

    raw['remaining_time'] = raw['minutes_remaining'] * 60 + raw['seconds_remaining']
    复制代码
  • 属性唯一值及分组统计打印出来

    投篮方式
      print(kobe.action_type.unique())
      print(kobe.combined_shot_type.unique())
      print(kobe.shot_type.unique())
      分组统计
      print(kobe.shot_type.value_counts())
    复制代码
Python环境安装及数据基本预处理-大数据ML样本集案例实战
  • 按列进行特殊符号处理

    kobe['season'].unique()  
      
      array(['2000-01', '2001-02', '2002-03', '2003-04', '2004-05', '2005-06',
             '2006-07', '2007-08', '2008-09', '2009-10', '2010-11', '2011-12',
             '2012-13', '2013-14', '2014-15', '2015-16', '1996-97', '1997-98',
             '1998-99', '1999-00'], dtype=object)
    
      raw['season'] = raw['season'].apply(lambda x: int(x.split('-')[1]) )
      raw['season'].unique()
      
      array([ 1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11, 12, 13, 14, 15, 16, 97,
            98, 99,  0], dtype=int64)
    复制代码
  • pd的DataFrame使用技巧(matchup两队对决,opponent对手是谁)

    pd.DataFrame({'matchup':kobe.matchup, 'opponent':kobe.opponent})
    复制代码
Python环境安装及数据基本预处理-大数据ML样本集案例实战

版权声明:本套技术专栏是作者(秦凯新)平时工作的总结和升华,通过从真实商业环境抽取案例进行总结和分享,并给出商业应用的调优建议和集群环境容量规划等内容,请持续关注本套博客。QQ邮箱地址:1120746959@qq.com,如有任何学术交流,可随时联系。

  • 属性相关性展示是否是线性关系(位置和投篮位置)

    plt.figure(figsize=(5,5))
      
      plt.scatter(raw.dist, raw.shot_distance, color='blue')
      plt.title('dist and shot_distance')
    复制代码
Python环境安装及数据基本预处理-大数据ML样本集案例实战
  • pd的groupby对kebe的投射位置进行分组

    gs = kobe.groupby('shot_zone_area')
      print (kobe['shot_zone_area'].value_counts())
      print (len(gs))
      
      Center(C)                11289
      Right Side Center(RC)     3981
      Right Side(R)             3859
      Left Side Center(LC)      3364
      Left Side(L)              3132
      Back Court(BC)              72
      Name: shot_zone_area, dtype: int64
      6
    复制代码
  • 区域划分拉链展示

    import matplotlib.cm as cm
      plt.figure(figsize=(20,10))
      
      def scatter_plot_by_category(feat):
          alpha = 0.1
          gs = kobe.groupby(feat)
          cs = cm.rainbow(np.linspace(0, 1, len(gs)))
          for g, c in zip(gs, cs):
              plt.scatter(g[1].loc_x, g[1].loc_y, color=c, alpha=alpha)
      
      # shot_zone_area
      plt.subplot(131)
      scatter_plot_by_category('shot_zone_area')
      plt.title('shot_zone_area')
      
      # shot_zone_basic
      plt.subplot(132)
      scatter_plot_by_category('shot_zone_basic')
      plt.title('shot_zone_basic')
      
      # shot_zone_range
      plt.subplot(133)
      scatter_plot_by_category('shot_zone_range')
      plt.title('shot_zone_range')
    复制代码
Python环境安装及数据基本预处理-大数据ML样本集案例实战
  • 去除某一列

    drops = ['shot_id', 'team_id', 'team_name', 'shot_zone_area', 'shot_zone_range', 'shot_zone_basic', \
               'matchup', 'lon', 'lat', 'seconds_remaining', 'minutes_remaining', \
               'shot_distance', 'loc_x', 'loc_y', 'game_event_id', 'game_id', 'game_date']
      for drop in drops:
          raw = raw.drop(drop, 1)
    复制代码
  • 独热编码(one-hot编码)(一列变多列(0000000)prefix指定添加列前缀)

    print (raw['combined_shot_type'].value_counts())
      pd.get_dummies(raw['combined_shot_type'], prefix='combined_shot_type')[0:2]
      
      Jump Shot    23485
      Layup         5448
      Dunk          1286
      Tip Shot       184
      Hook Shot      153
      Bank Shot      141
      Name: combined_shot_type, dtype: int64
    复制代码
Python环境安装及数据基本预处理-大数据ML样本集案例实战
  • 独热编码之后,拼接成1列后,删除对应列。

    categorical_vars = ['action_type', 'combined_shot_type', 'shot_type', 'opponent', 'period', 'season']
      for var in categorical_vars:
          raw = pd.concat([raw, pd.get_dummies(raw[var], prefix=var)], 1)
          raw = raw.drop(var, 1)
    复制代码

版权声明:本套技术专栏是作者(秦凯新)平时工作的总结和升华,通过从真实商业环境抽取案例进行总结和分享,并给出商业应用的调优建议和集群环境容量规划等内容,请持续关注本套博客。QQ邮箱地址:1120746959@qq.com,如有任何学术交流,可随时联系。

总结

综上所述, numpy与pandas与matplotlit与sklearn四剑客组成了强大的数据分析预处理支持。

秦凯新 于深圳 201812081439


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Masterminds of Programming

Masterminds of Programming

Federico Biancuzzi、Chromatic / O'Reilly Media / 2009-03-27 / USD 39.99

Description Masterminds of Programming features exclusive interviews with the creators of several historic and highly influential programming languages. Think along with Adin D. Falkoff (APL), Jame......一起来看看 《Masterminds of Programming》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具