加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

以FIFA球员数据集为例,详解3大酷炫可视化技巧

发布时间:2019-05-21 21:54:39 所属栏目:教程 来源:读芯术
导读:可视化令数据一览无余。然而,乐成的数据可视化每每很难实现。另外,向更多受众泛起这些可视化的数据,也必要淹灭更多时刻和精神。 各人都知道怎样建造条形图、散点图和直方图,但却不注重美化它们。这在无形中会侵害我们在偕行和上级心中的靠得住性。 另外
副问题[/!--empirenews.page--]

可视化令数据一览无余。然而,乐成的数据可视化每每很难实现。另外,向更多受众泛起这些可视化的数据,也必要淹灭更多时刻和精神。

各人都知道怎样建造条形图、散点图和直方图,但却不注重美化它们。这在无形中会侵害我们在偕行和上级心中的靠得住性。

另外,代码重用也很重要。你该不会想每次会见数据集都从新开始吧?操作一些可重用的图形能更快地找到你想要的信息。

以FIFA球员数据集为例,详解3大酷炫可视化能力

本文涉及三个适用的可视化器材:

  • 图形分类相干性
  • 散点图矩阵
  • 行使Seaborn的分类散点图注释和图注释

总的来说,本文会教各人建造一些悦目又顶用的图表。

本文将行使kaggle上的国际足联2019年完备的球员数据集,其最新版数据库包罗了每个注册在内的球员的具体信息。

因为该数据集有很多列,因此我们只存眷分类列和持续列的子集。

  1. import numpy as np 
  2. import pandas as pd 
  3. import seaborn as sns 
  4. import matplotlib.pyplot as plt 
  5. %matplotlib inline 
  6. # We dont Probably need the Gridlines. Do we? If yes comment this line 
  7. sns.set(style="ticks") 
  8. player_df = pd.read_csv("../input/data.csv") 
  9. numcols = [ 
  10.  'Overall', 
  11.  'Potential', 
  12. 'Crossing','Finishing',  'ShortPassing',  'Dribbling','LongPassing', 'BallControl', 'Acceleration', 
  13.        'SprintSpeed', 'Agility',  'Stamina', 
  14.  'Value','Wage'] 
  15. catcols = ['Name','Club','Nationality','Preferred Foot','Position','Body Type'] 
  16. # Subset the columns 
  17. player_dfplayer_df = player_df[numcols+ catcols] 
  18. # Few rows of data 
  19. player_df.head(5) 

以FIFA球员数据集为例,详解3大酷炫可视化能力

球员数据

固然该数据名目精采,可是由于人为和值列是以欧元为单元,并包括字符串,必要举办一些预处理赏罚,才气使它们为后续说明提供数值。

  1. def wage_split(x): 
  2.     try: 
  3.         return int(x.split("K")[0][1:]) 
  4.     except: 
  5.         return 0 
  6. player_df['Wage'] = player_df['Wage'].apply(lambda x : wage_split(x)) 
  7. def value_split(x): 
  8.     try: 
  9.         if 'M' in x: 
  10.             return float(x.split("M")[0][1:]) 
  11.         elif 'K' in x: 
  12.             return float(x.split("K")[0][1:])/1000 
  13.     except: 
  14.         return 0 
  15. player_df['Value'] = player_df['Value'].apply(lambda x : value_split(x)) 

图形分类相干性

简朴来说,相干性是权衡两个变量怎样一路行为的指标。

譬喻,在实际糊口中,收入与支出呈正相干,个中一个变量跟着另一个变量的增进而增进。

进修后果和电子游戏的行使呈负相干,个中一个变量的增进意味着另一个变量的镌汰。

因此假如猜测变量与方针变量呈正相干或负相干,那么该变量就有研究代价。

研究差异变量之间的相干性对付领略数据很是故意义。

行使Seaborn即可轻松建设出相等不错的相关图。

  1. corr = player_df.corr() 
  2. g = sns.heatmap(corr,  vmax=.3, center=0, 
  3.             square=True, linewidths=.5, cbar_kws={"shrink": .5}, annot=True, fmt='.2f', cmap='coolwarm') 
  4. sns.despine() 
  5. g.figure.set_size_inches(14,10) 
  6.  
  7. plt.show() 

以FIFA球员数据集为例,详解3大酷炫可视化能力

全部的分类变量都去哪了?

你有留意到什么题目吗?

有题目,由于该图仅计较了数值列之间的相干性。

假如方针变量是club或position,会呈现什么环境?

假如想获得三种差异环境之间的相干性,可行使以下相干性怀抱来计较。

1. 数值变量

该变量可通过Pearson相干性的方法获得,用于怀抱两个变量怎样一路行为,范畴为[-1,1]。

2. 分类变量

行使克莱姆V系数来分类案例。该系数是两个离散变量之间的彼此关联,并与具有两个或多条理的变量一路行使。它也是一个对称的怀抱,由于变量的次序无关紧急,即克莱姆(A,B)==克莱姆(B,A)。

譬喻,在数据齐集,Club和Nationality必然有某种关联。

可用堆叠图来验证这一点,这是领略分类变量和分类变量间漫衍的一个绝佳要领,由于在该数据中有许多国籍和俱乐部,以是行使数据的子集。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读