Kobe Bryant Shot Selection---1

data = pd.read_csv('data.csv')
print(data.info()) #显示多少行 多少列 每列的数据类型

set(data['shot_type'].tolist()) #显示这一列有哪几种数据

data['shot_type'].value_counts()#显示这一列有哪几种数据,每种数据多少个

#########获取shot_made_flag列不为空所有行###########

import pandas as pd 

raw = pd.read_csv(filename)

nona =  raw[pd.notnull(raw['shot_made_flag'])]

##############matplotlib例子#####################

alpha = 0.02 #透明度,0为完全透明,1为完全不透明
plt.figure(figsize=(10,10)) #画布大小

# loc_x and loc_y
plt.subplot(121)
plt.scatter(nona.loc_x, nona.loc_y, color='blue', alpha=alpha)
plt.title('loc_x and loc_y')

# lat and lon
plt.subplot(122)
plt.scatter(nona.lon, nona.lat, color='green', alpha=alpha)
plt.title('lat and lon')

##############将横纵坐标转化为极坐标#####################

raw['dist'] = np.sqrt(raw['loc_x']**2 + raw['loc_y']**2)

loc_x_zero = raw['loc_x'] == 0 #取得某一列数值的0的行的索引
raw['angle'] = np.array([0]*len(raw)) #增加一列,列名为angle,数值全部为0
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

猜你喜欢

转载自www.cnblogs.com/wangzhonghan/p/10412810.html