第1关:投篮位置

import matplotlib.pyplot as plt
import pandas as pd
pd.set_option('display.max_columns', 1000)
pd.set_option('display.width', 1000)
pd.set_option('display.max_colwidth', 1000)def student():# ********* Begin *********#data=pd.read_csv("Task1/data.csv")data=data.dropna(axis=0)loc_x=data['loc_x']loc_y=data['loc_y']lat=data['lat']lon=data['lon']plt.figure(figsize=(10,10))plt.subplot(1,2,1)plt.scatter(loc_x,loc_y,alpha=0.02,c='b')plt.title('loc_x and loc_y')plt.subplot(1,2,2)plt.scatter(lon,lat,alpha=0.02,c='g')plt.title('lat and lon')plt.savefig('Task1/img/T1.png')# ********* End *********#

第2关:射击距离

import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
pd.set_option('display.max_columns', 1000)
pd.set_option('display.width', 1000)
pd.set_option('display.max_colwidth', 1000)def student():# ********* Begin *********#data=pd.read_csv("Task1/data.csv")data=data.dropna(axis=0)loc_x=data['loc_x']loc_y=data['loc_y']dist=(loc_x**2+loc_y**2)**0.5shot_distance=data['shot_distance']plt.figure(figsize=(5,5))plt.scatter(dist,shot_distance)plt.title('dist and shot_distance')plt.savefig('Task2/img/T1.png')# ********* End *********#

第3关:射击区范围

import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import matplotlib.cm as cm
pd.set_option('display.max_columns', 1000)
pd.set_option('display.width', 1000)
pd.set_option('display.max_colwidth', 1000)def student():# ********* Begin *********#data=pd.read_csv("./data.csv")cmap = plt.cm.rainbownorm = matplotlib.colors.Normalize()plt.figure(figsize=(10,10))plt.subplot(2,1,1)data1=datax=data1["shot_made_flag"].groupby(data1["shot_zone_range"]).mean()x=pd.DataFrame([x.index,x.values]).Tdata1=pd.merge(data1,x,left_on="shot_zone_range",right_on=0)plt.scatter(x=data1["lon"],y=data1["lat"],c=cmap(norm(list(data1[1].values))))plt.ylim(33.7,34.0883)plt.subplot(2,1,2)d=data["shot_zone_range"].groupby(data["shot_zone_range"]).count()d=pd.DataFrame([d.index,d.values]).Td.sort_values(by=[1],ascending=False,inplace=True)c=[]for i in d[0]:c.append(data1[data1["shot_zone_range"]==i][1].head(1).values[0])plt.bar(d[0],d[1],color=cmap(norm(c)))plt.savefig("Task4/img/T1.png")plt.show()# ********* End *********#

第4关:射击区

import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import matplotlib.cm as cm
pd.set_option('display.max_columns', 1000)
pd.set_option('display.width', 1000)
pd.set_option('display.max_colwidth', 1000)def student():c={"Center(C)":"goldenrod","Right Side Center(RC)":"cornflowerblue","Right Side(R)":"fuchsia","Left Side Center(LC)":"limegreen","Left Side(L)":"turquoise","Back Court(BC)":"red"}# ********* Begin *********#plt.figure(figsize=(10,10))data=pd.read_csv("./data.csv")plt.subplot(2,1,1)data1=datax=data1["shot_made_flag"].groupby(data1["shot_zone_area"]).mean()x=pd.DataFrame([x.index,x.values]).Tdata1=pd.merge(data1,x,left_on="shot_zone_area",right_on=0)data2=pd.DataFrame([c.keys(),c.values()]).Tdata1=pd.merge(data1,data2,left_on="shot_zone_area",right_on=0)plt.scatter(x=data1["lon"],y=data1["lat"],color=data1["1_y"])plt.ylim(33.7,34.0883)plt.subplot(2,1,2)d=data["shot_zone_area"].groupby(data["shot_zone_area"]).count()d=pd.DataFrame([d.index,d.values]).Td.sort_values(by=[1],ascending=False,inplace=True)plt.bar(d[0],d[1],color=c.values())plt.xticks(rotation=45)plt.savefig("Task5/img/T1.png")plt.show()# ********* End *********#

第5关:具体投篮区域

import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import matplotlib.cm as cm
pd.set_option('display.max_columns', 1000)
pd.set_option('display.width', 1000)
pd.set_option('display.max_colwidth', 1000)def student():c={"Mid-Range":"cornflowerblue","Restricted Area":"fuchsia","Above the Break 3":"tomato","In The Paint (Non-RA)":"limegreen","Right Corner 3":"green","Back Court(BC)":"fuchsia","Left Corner 3":"lime","Backcourt":"tan"}# ********* Begin *********#plt.figure(figsize=(10,10))data=pd.read_csv("./data.csv")plt.subplot(2,1,1)data1=datax=data1["shot_made_flag"].groupby(data1["shot_zone_basic"]).mean()x=pd.DataFrame([x.index,x.values]).Tdata1=pd.merge(data1,x,left_on="shot_zone_basic",right_on=0)data2=pd.DataFrame([c.keys(),c.values()]).Tdata1=pd.merge(data1,data2,left_on="shot_zone_basic",right_on=0)plt.scatter(x=data1["lon"],y=data1["lat"],color=data1["1_y"])plt.ylim(33.7,34.0883)plt.subplot(2,1,2)d=data["shot_zone_area"].groupby(data["shot_zone_basic"]).count()d=pd.DataFrame([d.index,d.values]).Td.sort_values(by=[1],ascending=False,inplace=True)plt.bar(d[0],d[1],color=c.values())plt.xticks(rotation=45)plt.savefig("Task6/img/T1.png")plt.show()# ********* End *********#

第6关:投篮准确度

import matplotlib
matplotlib.use("Agg")
import matplotlib.pyplot as plt
import pandas as pd
import numpy as np
import matplotlib.cm as cm
pd.set_option('display.max_columns', 1000)
pd.set_option('display.width', 1000)
pd.set_option('display.max_colwidth', 1000)def student():# ********* Begin *********#data=pd.read_csv("./data.csv").dropna()plt.subplot(212)data1=data[["lat","lon","shot_zone_range","shot_made_flag"]]x=data1["shot_made_flag"].groupby(data1["shot_zone_range"]).mean()x=pd.DataFrame([x.index,x.values]).Tdata1=pd.merge(data1,x,left_on="shot_zone_range",right_on=0)d=plt.scatter(x=data1["lon"],y=data1["lat"],c=data1[1])plt.colorbar(d,)plt.ylim((33.7, 34.0883))plt.subplot(222)data2=data[["lat","lon","shot_zone_area","shot_made_flag"]]da=data2["shot_made_flag"].groupby(data2["shot_zone_area"]).mean()d=pd.DataFrame([da.index,da.values]).Tdata2=pd.merge(data2,d,left_on="shot_zone_area",right_on=0)plt.scatter(x=data2["lon"],y=data2["lat"],c=data2[1])plt.ylim((33.7, 34.0883))plt.subplot(221)data3=data[["lat","lon","shot_zone_basic","shot_made_flag"]]da=data3["shot_made_flag"].groupby(data3["shot_zone_basic"]).mean()da=pd.DataFrame([da.index,da.values]).Tdata3=pd.merge(data3,da,left_on="shot_zone_basic",right_on=0)plt.scatter(x=data3["lon"],y=data3["lat"],c=data3[1])plt.ylim((33.7, 34.0883))plt.savefig("Task7/img/T1.png")plt.show()# ********* End *********#

【头歌】科比投篮预测——可视化与探索性数据分析(一)相关推荐

  1. 科比投篮预测——可视化与探索性数据分析(一)

    第1关:投篮位置 本关任务:从数据中,我们无法看出特征lat,lon和loc_x,loc_y的区别,所以我们绘制一个一行两列的两个散点图,表示loc_x,loc_y,lat,lon的关系. impor ...

  2. 科比投篮预测——可视化与探索性数据分析(二)

    第1关:射击精准度 本关任务:绘制一个散点图,表示不同进攻方式与命中率之间的关系,具体图形示例请查看测试说明. import pandas as pd import matplotlib.pyplot ...

  3. 头哥教学平台-泰坦尼克生还预测-可视化与探索性数据分析

    第1关 存活率与性别和船舱等级之间的关系 import pandas as pd import numpy as np import seaborn as sns import warnings wa ...

  4. Educoder中题目:泰坦尼克生还预测——可视化与探索性数据分析

    第1关:存活率与性别和船舱等级之间的关系 import pandas as pdimport numpy as npimport seaborn as snsimport warningswarnin ...

  5. 泰坦尼克数据集预测分析_探索性数据分析—以泰坦尼克号数据集为例(第1部分)

    泰坦尼克数据集预测分析 Imagine your group of friends have decided to spend the vacations by travelling to an am ...

  6. 科比投篮预测,可视化与探索性数据分析(二)

    第一关: import pandas as pd import matplotlib.pyplot as plt pd.set_option('display.max_columns', 1000) ...

  7. 泰坦尼克数据集预测分析_探索性数据分析-泰坦尼克号数据集案例研究(第二部分)

    泰坦尼克数据集预测分析 Data is simply useless until you don't know what it's trying to tell you. 除非您不知道数据在试图告诉您 ...

  8. 头歌实践平台:招聘大数据——数据分析

    第1关:数据分析--行业/公司人才稀缺数据分析 import org.apache.spark.sql.{SaveMode, SparkSession}object zhaopin_fenxi1 {d ...

  9. eda可视化_5用于探索性数据分析(EDA)的高级可视化

    eda可视化 Early morning, a lady comes to meet Sherlock Holmes and Watson. Even before the lady opens he ...

最新文章

  1. Microbiome:肠道菌群失衡促进高血压
  2. Xamarin XAML语言教程基本视图ContentView
  3. 释疑の采购订单的批量修改
  4. laravel翻看php日志,关于Laravel的日志用法
  5. linux下卸载mysql(rpm)
  6. Bzoj3924 [Zjoi2015]幻想乡战略游戏
  7. 透过字节码分析java基本类型数组的内存分配方式。
  8. oracle 函数可变参数,6.3 带有可变参数的函数
  9. nginx文件下载服务器简单配置
  10. 操作 Wave 文件(3): 接触 mmio 系列函数
  11. FMEA失效模式和影响分析
  12. δ星 丨 读书笔记 notes-凭什么《只放一只羊》:干掉沃尔玛10个亿并将其逼出德国的“平民超市”品牌阿尔迪...
  13. 区块链 Hyperledger Composer 使用教程(环境搭建、项目开发 一)
  14. JVM相关命令查看GC情况
  15. ASF文件格式之Objects与Guid总结
  16. python全栈(一)网络通信与服务器之多任务-进程
  17. 类似微信朋友圈的mysql数据库
  18. Mac 抓包工具 Charles
  19. 利用51单片机霍尔水流量传感器开发水流统计水流量报警(LCD1602显示)
  20. arm64的ioremap_ARM64的启动过程之(三):为打开MMU而进行的CPU初始化

热门文章

  1. 网络空间安全概论 第二章 作业
  2. lombok和JPA的死递归
  3. string类 string.h头文件 cstring头文件区别以及读取一行字符串总结
  4. AD10 画封装经验【突出长度的问题】【 PCB中任意形状封装修改网络名】
  5. 云开发--实现发送邮件+短信+链接跳转小程序功能
  6. 软件测试之——性能测试,Web性能测试用例(详全)
  7. The Road to multipath QUIC: 阿里自研多路径传输技术XLINK
  8. 菜鸟浅谈“诈骗”希望“治未病
  9. Integer. valueOf()的使用
  10. java 7 mac 下载_macOS x64 Java/JDK 7下载 jdk-7u80-macosx-x64.dmg官方镜像版