分析体测成绩

需求:

体侧成绩转变成分数

开卷考试

excel完成可以

pandas读取excel代码中 完成

一个手输入

进一步,画图,分布,体重正常,肥胖,偏瘦比例,绘制饼图

男生跑步1000成绩,不及格,及格,中等,良好,优秀,柱状图绘制

导包、读取文件

import numpy as np

import pandas as pd

from pandas import Series,DataFrame

import matplotlib.pyplot as plt
%matplotlib inline
data = pd.read_excel('18级高一体测成绩汇总.xls')
data
班级 性别 姓名 1000米 50米 跳远 体前屈 引体 肺活量 身高 体重 BMI  
0 1 高孜阳0611 4'13 8.88 195 12 1 2785 170 72.6 NaN
1 1 郝少杰1013 4'16 7.70 225 11 7 3133 174 52.7 NaN
2 1 郝梓烨0619 4'09 8.45 218 14 1 3901 169 46.5 NaN
3 1 何弘源1010 4'21 8.05 206 13 1 4946 183 79.7 NaN
4 1 刘硕鹏1212 3'44 7.52 210 13 9 3538 171 54.7 NaN
... ... ... ... ... ... ... ... ... ... ... ... ...
488 17 张乔楠0311 4'23 8.27 208 10 0 4647 176 69.5 NaN
489 17 郭泽森0333 5'19 9.55 210 15 6 7042 177 76 NaN
490 17 陈子龙061X 3'25 7.5 252 13 13 5755 181 65 NaN
491 17 王丹龙0636 4'39 7.81 208 14 11 5688 172 51.7 NaN
492 17 王玉涵0636 NaN NaN NaN NaN NaN NaN NaN NaN NaN
# 清洗数据
cond = data['班级'] != '班级' # 把有班级那一行的数据给删除

data = data[cond]   # 得到新的数据

data[:45]
班级 性别 姓名 1000米 50米 跳远 体前屈 引体 肺活量 身高 体重 BMI  
0 1 高孜阳0611 4'13 8.88 195 12 1 2785 170 72.6 NaN
1 1 郝少杰1013 4'16 7.70 225 11 7 3133 174 52.7 NaN
2 1 郝梓烨0619 4'09 8.45 218 14 1 3901 169 46.5 NaN
3 1 何弘源1010 4'21 8.05 206 13 1 4946 183 79.7 NaN
4 1 刘硕鹏1212 3'44 7.52 210 13 9 3538 171 54.7 NaN
5 1 刘运硕0314 3'49 7.94 190 20 7 3970 175 66.4 NaN
6 1 吕晓瑶0314 3'54 7.75 186 11 7 3710 173 53.9 NaN
7 1 米孜聪0636 4'3 8.06 195 3 1 5578 178 83.1 NaN
8 1 聂浩然2719 4'01 7.75 220 15 10 3821 175 66.5 NaN
9 1 牛苗嘉1211 4'12 7.38 245 17 11 4423 167 53.9 NaN
10 1 牛砚哲2813 4 7.82 219 13 11 4031 173 57.4 NaN
11 1 齐子涵185x 4'13 7.37 228 9 15 4354 163 54.6 NaN
12 1 乔一甲0616 3'45 7.66 202 7 3 2238 179 61.1 NaN
13 1 任晓波0311 3'46 7.66 245 3 7 4811 177 63.9 NaN
14 1 戎小龙2633 0 0 0 0 0 0 0 NaN NaN
15 1 桑淳熙0616 3'57 7.60 192 7 5 4147 174 59.2 NaN
16 1 田晓龙2411 4'18 8.14 210 8 4 4241 179 61.9 NaN
17 1 田玉聪2716 3'32 7.20 255 22 12 5324 183 63.4 NaN
18 1 王晨宇0613 3'56 8.15 207 13 12 4363 173 60.5 NaN
19 1 王家梁0630 3'47 8.15 202 13 16 5364 174 56 NaN
20 1 王乐天3331 3'53 7.85 210 3 7 3445 177 56.9 NaN
21 1 王一钊1213 3'57 7.85 220 9 2 5670 177 55.5 NaN
22 1 王子天0634 3'42 7.23 212 12 15 5709 185 72.3 NaN
23 1 王子鑫0012 4'3 7.68 218 15 3 4780 177 83.7 NaN
24 1 未晓锟1214 4'14 8.30 206 15 1 3358 173 46.6 NaN
25 1 张国瑞033x 4'04 8.15 205 9 5 3494 169 48.3 NaN
26 1 张皓天0632 4'04 7.55 190 12 5 3286 169 50.1 NaN
27 1 张泽地0310 4'02 7.55 240 5 12 4483 171 58.4 NaN
28 1 张智贤0318 3'57 7.89 220 9 11 4254 166 54.8 NaN
29 1 赵博翰101x 4'16 8.19 212 27 7 3498 169 68 NaN
30 1 赵泽凯0311 4'01 7.89 213 5 11 4322 174 55.9 NaN
31 1 赵泽宇0616 4'08 8.21 208 19 20 3917 166 51.9 NaN
32 1 左晶川1217 4'06 8.71 206 11 4 3970 172 47.8 NaN
34 2 贾和0633 4'22 7.97 215 9 9 3865 175 58.7 NaN
35 2 李森0636 0 0 0 0 0 0 0 NaN NaN
36 2 李一帆1812 4'46 8.79 172 7 1 4750 174 88.6 NaN
37 2 李子阳0618 4'01 7.37 210 2 7 4714 182 62.5 NaN
38 2 吕星繁0312 0 0 0 0 0 0 0 NaN NaN
39 2 赵凌云105x 4'13 7.77 208 8 7 4327 173 56 NaN
40 2 赵鹏悦2612 4'27 8.8 185 10 5 4745 164 74.8 NaN
42 3 宫诚博0612 3'43 6.89 276 16 12 5212 1.84 73.1 NaN
43 3 郭亚浩181X 4'04 7.25 240 13 8 4756 1.76 72 NaN
44 3 郝晓辰0013 3'38 7.36 246 22 11 4433 1.84 62.5 NaN
45 3 李国玺2310 4'19 8.17 220 18 1 4438 1.74 72.2 NaN
46 3 李一帆1218 4'08 7.8 227 15 1 6033 1.77 85.6 NaN
data.fillna(0, inplace=True)  # 没有参加体侧的同学分数都填充成0
# 没有空数据了
data.isnull().any() #查询是否还有空数据
班级       False
性别       False
姓名       False
1000米   False
50米     False
跳远       False
体前屈     False
引体       False
肺活量     False
身高       False
体重       False
BMI     False
dtype: bool
data.head()
班级 性别 姓名 1000米 50米 跳远 体前屈 引体 肺活量 身高 体重 BMI  
0 1 高孜阳0611 4'13 8.88 195.0 12 1 2785 170.0 72.6 0.0
1 1 郝少杰1013 4'16 7.70 225.0 11 7 3133 174.0 52.7 0.0
2 1 郝梓烨0619 4'09 8.45 218.0 14 1 3901 169.0 46.5 0.0
3 1 何弘源1010 4'21 8.05 206.0 13 1 4946 183.0 79.7 0.0
4 1 刘硕鹏1212 3'44 7.52 210.0 13 9 3538 171.0 54.7 0.0

把数据中的 4'13 转换成 小数

def convert(x):
   
  if isinstance(x, str):
      minute, second = x.split("'")
      minute = int(minute)
      second = int(second)
      return minute + second / 100.0
  else:
      return x


data['1000米'] = data['1000米'].map(convert)   # 映射
data.head()

班级 性别 姓名 1000米 50米 跳远 体前屈 引体 肺活量 身高 体重 BMI 0 1 男 高孜阳0611 4.13 8.88 195.0 12 1 2785 170.0 72.6 0.0 1 1 男 郝少杰1013 4.16 7.70 225.0 11 7 3133 174.0 52.7 0.0 2 1 男 郝梓烨0619 4.09 8.45 218.0 14 1 3901 169.0 46.5 0.0 3 1 男 何弘源1010 4.21 8.05 206.0 13 1 4946 183.0 79.7 0.0 4 1 男 刘硕鹏1212 3.44 7.52 210.0 13 9 3538 171.0 54.7 0.0

加载体侧成绩评分表

score = pd.read_excel('体侧成绩评分表.xls', header = [0,1]) 
score

男肺活量 女肺活量 男50米跑 女50米跑 男体前屈 ... 女跳远 男引体 女仰卧 男1000 女800 成绩 分数 成绩 分数 成绩 分数 成绩 分数 成绩 分数 ... 成绩 分数 成绩 分数 成绩 分数 成绩 分数 成绩 分数 0 4540 100 3150 100 7.1 100 7.8 100 23.6 100 ... 204 100 16.0 100 53 100 3'30" 100 3'24" 100 1 4420 95 3100 95 7.2 95 7.9 95 21.5 95 ... 198 95 15.0 95 51 95 3'35" 95 3'30" 95 2 4300 90 3050 90 7.3 90 8.0 90 19.4 90 ... 192 90 14.0 90 49 90 3'40" 90 3'36" 90 3 4050 85 2900 85 7.4 85 8.3 85 17.2 85 ... 185 85 13.0 85 46 85 3'47" 85 3'43" 85 4 3800 80 2750 80 7.5 80 8.6 80 15.0 80 ... 178 80 12.0 80 43 80 3'55" 80 3'50" 80

把男1000 成绩 3'30 转换成小数

def convert(item):
  m, s = item.strip('"').split("'")
  m, s = int(m),int(s)
   
  return m + s / 100.0

score.iloc[:,-4] = score.iloc[:,-4].map(convert) # 获取它的索引

把女800 成绩 3'30 转换成小数

def convert(item):
  m, s = item.strip('"').split("'")
  m, s = int(m),int(s)
   
  return m + s / 100.0

score.iloc[:,-2] = score.iloc[:,-2].map(convert) # 获取它的索引

对应索引 男1000 男50米跑

data.columns =['班级', '性别', '姓名', '男1000', '男50米跑', '跳远', '体前屈', '引体', '肺活量', '身高', '体重',
      'BMI']
data
s.dtypes
成绩    float64
分数     int64
dtype: object
data.dtypes
data['男50米跑'] = data['男50米跑'].astype(np.float)   # 转换数据类型
data
for col in [ '男1000', '男50米跑']:
   
  s = score[col]   # 获取成绩的标准
   
  def convert(x):
      for i in range(len(s)):   # 获取长度循环
          if x <= s['成绩'].iloc[0]:
              if x == 0:       # 判断是否没有成绩
                  return 0    
              return 100
          elif x > s['成绩'].iloc[-1]:
              return 0     # 跑得太慢
          elif (x > s['成绩'].iloc[i - 1]) and (x <= s['成绩'].iloc[i]):
              return s['分数'].iloc[i]
       
       
  data[col + '成绩'] = data[col].map(convert)   # 增加一列
   
   
  # 这里会报错 数据类型不对   我们在上面转换一下数据类型

转换 '跳远', '体前屈', '引体', '肺活量'

data.columns
score.head()
for col in ['跳远', '体前屈', '引体', '肺活量']:
  s = score['男' + col]
   
   
  def convert(x):
      for i in range(len(s)):
          if x >= s['成绩'].iloc[i]:
              return s['分数'].iloc[i]
      return 0
   
  data[col + '成绩'] = data[col].map(convert)
data.head()

班级 性别 姓名 男1000 男50米跑 跳远 体前屈 引体 肺活量 身高 体重 BMI 男1000成绩 男50米跑成绩 跳远成绩 体前屈成绩 引体成绩 肺活量成绩 0 1 男 高孜阳0611 4.13 8.88 195.0 12 1 2785 170.0 72.6 0.0 72 66 60 74 0 62 1 1 男 郝少杰1013 4.16 7.70 225.0 11 7 3133 174.0 52.7 0.0 70 78 74 74 60 68 2 1 男 郝梓烨0619 4.09 8.45 218.0 14 1 3901 169.0 46.5 0.0 74 70 70 78 0 80 3 1 男 何弘源1010 4.21 8.05 206.0 13 1 4946 183.0 79.7 0.0 68 74 64 76 0 100 4 1 男 刘硕鹏1212 3.44 7.52 210.0 13 9 3538 171.0 54.7 0.0 85 78 66 76 68 74

data.columns

cols = ['班级', '性别', '姓名', '男1000','男1000成绩', '男50米跑', '男50米跑成绩', '跳远', '跳远成绩','体前屈', '体前屈成绩', '引体','引体成绩', '肺活量', '肺活量成绩', '身高', '体重', 'BMI', ]

cols = ['班级', '性别', '姓名', '男1000','男1000成绩', '男50米跑', '男50米跑成绩', '跳远', '跳远成绩','体前屈',
'体前屈成绩', '引体','引体成绩', '肺活量', '肺活量成绩', '身高',
      '体重', 'BMI', ]
# 根据索引的顺序去DataFrame中取值
data[cols]

计算体重

h = data['身高'] 
h[:50]
def convert(x):
  if x >100:
      return x/100
  return x
data['身高'] = data['身高'].map(convert)
data['BMI'] = (data['体重'] / data['身高']**2).round(1)  # 保留1位小数
data.head()
班级  性别  姓名  男1000   男50米跑   跳远  体前屈 引体  肺活量 身高  体重  BMI 男1000成绩 男50米跑成绩 跳远成绩    体前屈成绩   引体成绩    肺活量成绩

0 1 男 高孜阳0611 4.13 8.88 195.0 12 1 2785 1.70 72.6 25.12 72 66 60 74 0 62 1 1 男 郝少杰1013 4.16 7.70 225.0 11 7 3133 1.74 52.7 17.41 70 78 74 74 60 68 2 1 男 郝梓烨0619 4.09 8.45 218.0 14 1 3901 1.69 46.5 16.28 74 70 70 78 0 80 3 1 男 何弘源1010 4.21 8.05 206.0 13 1 4946 1.83 79.7 23.80 68 74 64 76 0 100 4 1 男 刘硕鹏1212 3.44 7.52 210.0 13 9 3538 1.71 54.7 18.71 85 78 66 76 68 74 ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... 488 17 男 张乔楠0311 4.23 8.27 208.0 10 0 4647 1.76 69.5 22.44 68 72 66 72 0 100 489 17 男 郭泽森0333 5.19 9.55 210.0 15 6 7042 1.77 76.0 24.26 40 50 66 80 50 100 490 17 男 陈子龙061X 3.25 7.50 252.0 13 13 5755 1.81 65.0 19.84 100 80 90 76 85 100 491 17 男 王丹龙0636 4.39 7.81 208.0 14 11 5688 1.72 51.7 17.48 62 76 66 78 76 100 492 17 男 王玉涵0636 0.00 0.00 0.0 0 0 0 0.00 0.0 NaN 0 0 0 50 0 0

def convert_bmi(x):
  if x >= 26.4:
      return 60
  elif (x <= 16.4) or (x > 23.3 and x < 26.3):
      return 80
  elif x >= 16.5 and x <= 23.2:
      return 100
  return 0
data['BMI_score'] = data['BMI'].map(convert_bmi)
班级 性别 姓名 男1000 男50米跑 跳远 体前屈 引体 肺活量 身高 体重 BMI 男1000成绩 男50米跑成绩 跳远成绩 体前屈成绩 引体成绩 肺活量成绩 BMI_score  
0 1 高孜阳0611 4.13 8.88 195.0 12 1 2785 1.70 72.6 25.12 72 66 60 74 0 62 80
1 1 郝少杰1013 4.16 7.70 225.0 11 7 3133 1.74 52.7 17.41 70 78 74 74 60 68 100
2 1 郝梓烨0619 4.09 8.45 218.0 14 1 3901 1.69 46.5 16.28 74 70 70 78 0 80 80
3 1 何弘源1010 4.21 8.05 206.0 13 1 4946 1.83 79.7 23.80 68 74 64 76 0 100 80
4 1 刘硕鹏1212 3.44 7.52 210.0 13 9 3538 1.71 54.7 18.71 85 78 66 76 68 74 100
5 1 刘运硕0314 3.49 7.94 190.0 20 7 3970 1.75 66.4 21.68 80 74 50 90 60 80 100
6 1 吕晓瑶0314 3.54 7.75 186.0 11 7 3710 1.73 53.9 18.01 80 76 40 74 60 78 100
7 1 米孜聪0636 4.03 8.06 195.0 3 1 5578 1.78 83.1 26.23 76 74 60 62 0 100 80
8 1 聂浩然2719 4.01 7.75 220.0 15 10 3821 1.75 66.5 21.71 76 76 72 80 72 80 100
9 1 牛苗嘉1211 4.12 7.38 245.0 17 11 4423 1.67 53.9 19.33 72 85 85 80 76 95 100
10 1 牛砚哲2813 4.00 7.82 219.0 13 11 4031 1.73 57.4 19.18 78 76 72 76 76 80 100
11 1 齐子涵185x 4.13 7.37 228.0 9 15 4354 1.63 54.6 20.55 72 85 76 70 95 90 100
12 1 乔一甲0616 3.45 7.66 202.0 7 3 2238 1.79 61.1 19.07 85 78 62 68 20 30 100
13 1 任晓波0311 3.46 7.66 245.0 3 7 4811 1.77 63.9 20.40 85 78 85 62 60 100 100
14 1 戎小龙2633 0.00 0.00 0.0 0 0 0 0.00 0.0 NaN 0 0 0 50 0 0 0
15 1 桑淳熙0616 3.57 7.60 192.0 7 5 4147 1.74 59.2 19.55 78 78 50 68 40 85 100
16 1 田晓龙2411 4.18 8.14 210.0 8 4 4241 1.79 61.9 19.32 70 72 66 70 30 85 100
17 1 田玉聪2716 3.32 7.20 255.0 22 12 5324 1.83 63.4 18.93 95 95 90 95 80 100 100
18 1 王晨宇0613 3.56 8.15 207.0 13 12 4363 1.73 60.5 20.21 78 72 64 76 80 90 100
19 1 王家梁0630 3.47 8.15 202.0 13 16 5364 1.74 56.0 18.50 85 72 62 76 100 100 100
20 1 王乐天3331 3.53 7.85 210.0 3 7 3445 1.77 56.9 18.16 80 76 66 62 60 74 100
21 1 王一钊1213 3.57 7.85 220.0 9 2 5670 1.77 55.5 17.72 78 76 72 70 10 100 100
22 1 王子天0634 3.42 7.23 212.0 12 15 5709 1.85 72.3 21.12 85 90 68 74 95 100 100
23 1 王子鑫0012 4.03 7.68 218.0 15 3 4780 1.77 83.7 26.72 76 78 70 80 20 100 60
24 1 未晓锟1214 4.14 8.30 206.0 15 1 3358 1.73 46.6 15.57 72 72 64 80 0 72 80
25 1 张国瑞033x 4.04 8.15 205.0 9 5 3494 1.69 48.3 16.91 76 72 64 70 40 74 100
26 1 张皓天0632 4.04 7.55 190.0 12 5 3286 1.69 50.1 17.54 76 78 50 74 40 70 100
27 1 张泽地0310 4.02 7.55 240.0 5 12 4483 1.71 58.4 19.97 76 78 80 64 80 95 100
28 1 张智贤0318 3.57 7.89 220.0 9 11 4254 1.66 54.8 19.89 78 76 72 70 76 85 100
29 1 赵博翰101x 4.16 8.19 212.0 27 7 3498 1.69 68.0 23.81 70 72 68 100 60 74 80
30 1 赵泽凯0311 4.01 7.89 213.0 5 11 4322 1.74 55.9 18.46 76 76 68 64 76 90 100
31 1 赵泽宇0616 4.08 8.21 208.0 19 20 3917 1.66 51.9 18.83 74 72 66 85 100 80 100
32 1 左晶川1217 4.06 8.71 206.0 11 4 3970 1.72 47.8 16.16 74 66 64 74 30 80 80
34 2 贾和0633 4.22 7.97 215.0 9 9 3865 1.75 58.7 19.17 68 74 70 70 68 80 100
35 2 李森0636 0.00 0.00 0.0 0 0 0 0.00 0.0 NaN 0 0 0 50 0 0 0
36 2 李一帆1812 4.46 8.79 172.0 7 1 4750 1.74 88.6 29.26 50 66 10 68 0 100 60
37 2 李子阳0618 4.01 7.37 210.0 2 7 4714 1.82 62.5 18.87 76 85 66 60 60 100 100
38 2 吕星繁0312 0.00 0.00 0.0 0 0 0 0.00 0.0 NaN 0 0 0 50 0 0 0
39 2 赵凌云105x 4.13 7.77 208.0 8 7 4327 1.73 56.0 18.71 72 76 66 70 60 90 100
40 2 赵鹏悦2612 4.27 8.80 185.0 10 5 4745 1.64 74.8 27.81 66 66 40 72 40 100 60
42 3 宫诚博0612 3.43 6.89 276.0 16 12 5212 1.84 73.1 21.59 85 100 100 80 80 100 100
43 3 郭亚浩181X 4.04 7.25 240.0 13 8 4756 1.76 72.0 23.24 76 90 80 76 64 100 0
44 3 郝晓辰0013 3.38 7.36 246.0 22 11 4433 1.84 62.5 18.46 90 85 85 95 76 95 100
45 3 李国玺2310 4.19 8.17 220.0 18 1 4438 1.74 72.2 23.85 70 72 72 85 0 95 80
46 3 李一帆1218 4.08 7.80 227.0 15 1 6033 1.77 85.6 27.32 74 76 76 80 0 100 60
47 3 刘凡1218 4.09 8.06 208.0 10 2 4106 1.70 68.7 23.77 74 74 66 72 10 85 80
48 3 刘哲垚1217 4.09 8.16 190.0 2 6 4214 1.67 60.7 21.76 74 72 50 60 50 85 100
49 3 米卓凡241X 4.05 8.16 200.0 13 9 3857 1.72 51.4 17.37 76 72 62 76 68 80 100
50 3 牛卓凡0614 4.02 8.27 228.0 14 12 3266 1.62 52.2 19.89 76 72 76 78 80 70 100
51 3 苏仕一1233 4.01 8.50 215.0 6 9 3578 1.64 49.9 18.55 76 70 70 66 68 76 100

统计分析

定义需求,画图,对比分析

(data['BMI_score'].value_counts()).plot(kind = 'pie', autopct = "%0.2f%%")

aaarticlea/png;base64,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" alt="img">

(data['BMI_score'].value_counts()).plot(kind = 'bar')

aaarticlea/png;base64,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" alt="img">

data.groupby(['男1000成绩'])['BMI_score'].count().plot()

aaarticlea/png;base64,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" alt="img">

Pandas 数据分析,高中体测练习的更多相关文章

  1. 动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题

    动态可视化 数据可视化之魅D3,Processing,pandas数据分析,科学计算包Numpy,可视化包Matplotlib,Matlab语言可视化的工作,Matlab没有指针和引用是个大问题 D3 ...

  2. python中pandas数据分析基础3(数据索引、数据分组与分组运算、数据离散化、数据合并)

    //2019.07.19/20 python中pandas数据分析基础(数据重塑与轴向转化.数据分组与分组运算.离散化处理.多数据文件合并操作) 3.1 数据重塑与轴向转换1.层次化索引使得一个轴上拥 ...

  3. pyhton pandas数据分析基础入门(一文看懂pandas)

    //2019.07.17 pyhton中pandas数据分析基础入门(一文看懂pandas), 教你迅速入门pandas数据分析模块(后面附有入门完整代码,可以直接拷贝运行,含有详细的代码注释,可以轻 ...

  4. pyhton中pandas数据分析模块快速入门(非常容易懂)

    //2019.07.16python中pandas模块应用1.pandas是python进行数据分析的数据分析库,它提供了对于大量数据进行分析的函数库和各种方法,它的官网是http://pandas. ...

  5. Pandas数据分析python环境说明文档

    1. 要求windows系统 2. pycharm编程环境并要求配置好python3.x环境 pycharm可在官网下载,下面是链接. https://www.jetbrains.com/zh/pyc ...

  6. PANDAS 数据分析初学者教程

    Pandas 初学者教程       2018-05-19 六尺巷人 对于数据科学家,无论是数据分析还是数据挖掘来说,Pandas是一个非常重要的Python包.它不仅提供了很多方法,使得数据处理非常 ...

  7. pandas数据分析案例

    1.数据分析步骤 ''' 数据分析步骤: 1.先加载数据 pandas.read_cvs("path") 2.查看数据详情 df.info() ,df.describe() ,df ...

  8. pandas数据分析小知识点(一)

    最近工作上,小爬经常需要用python做一些关于excel数据分析的事情,显然,从性能和拓展性的角度出发,使用pandas.numpy是比vba更好的选择.因为pandas能提供诸如SQL的很多查找. ...

  9. (数据科学学习手札72)用pdpipe搭建pandas数据分析流水线

    1 简介 在数据分析任务中,从原始数据读入,到最后分析结果出炉,中间绝大部分时间都是在对数据进行一步又一步的加工规整,以流水线(pipeline)的方式完成此过程更有利于梳理分析脉络,也更有利于查错改 ...

随机推荐

  1. centos 磁盘挂载

    1.更改磁盘格式 fdisk -l fdisk /dev/vdb mkfs.xfs /dev/vdb1 mkfs.xfs /dev/vdb1 -f 2.查看UUID blkid 3.挂载文件夹 vim ...

  2. 【机器学习】【条件随机场CRF-3】条件随机场的参数化形式详解 + 画出对应的状态路径图 + 给出对应的矩阵表示

    1.条件随机场概念CRF,Conditional Random Field,是给定一组输入随机变量条件下另一组输出随机变量的条件概率分布模式,其特点是假设输出随机变量构成马尔可夫随机场. 条件随机场用 ...

  3. svcs (service status) 和 svcadm (service administration) 使用

    1. svcs  显示服务实例的状态信息 svcs - report service status  显示服务状态命令 DESCRIPTION The svcs command displays in ...

  4. H3C PPP会话建立过程

  5. JavaScript:4个常见的内存泄露

    什么是内存泄漏 内存泄漏基本上就是不再被应用需要的内存,由于某种原因,没有被归还给操作系统或者进入可用内存池. 编程语言喜欢不同的管理内存方式.然而,一段确定的内存是否被使用是一个不可判断的问题.换句 ...

  6. python模块之模块导入

    模块的导入 """ 模块的导入使用:模块导入一般都要放在代码的最上面 不同模块的导入顺序: 1 内置模块 2 扩展模块 3 自定义模块 """ ...

  7. UVa1601 - The Morning after Halloween [单向bfs]

    解题思路: 1.注意到2*2方格中必有一个#,那么最多只有192条通道,可以将所有非‘#’的位置提取出来用邻接表的方式建图,通过bfs搜索目标位置. 2.将三个ghost的位置(a,b,c)作为状态量 ...

  8. P1054 全组合

    题目描述 给定n,m,按字典序输出所有从1-n里面取出m个数的组合.比如从1-3里面取出2个的组合是: 1 2 1 3 2 3 输入格式 输入两个数n,m.其中 \(0<n<=10,0&l ...

  9. linux内核符号表

    我们已经看到 insmod 如何对应共用的内核符号来解决未定义的符号. 表中包含了全局内 核项的地址 -- 函数和变量 -- 需要来完成模块化的驱动. 当加载一个模块, 如何由模块 输出的符号成为内核 ...

  10. NetBIOS 计算机名称命名限制

    本文告诉大家对于 NetBIOS 的命名的限制 长度限制 最小长度是 1 最长长度是 15 因为默认是 16 字符,但是微软使用最后一个字符作为后缀 可以使用的字符 可以使用英文和数字 abcdefg ...