探索学生对酒的消费情况

数据见github

步骤1 - 导入必要的库

import pandas as pd
import numpy as np

步骤2 - 数据集

path4 = "./data/student-mat.csv"   

步骤3 将数据命名为student

student = pd.read_csv(path4)
student.head()

输出:

步骤4 从'school'到'guardian'将数据切片

stud_alcoh = student.loc[: , "school":"guardian"]
stud_alcoh.head()

输出:

步骤5 创建一个捕获字符串的lambda函数

captalizer = lambda x: x.upper()

步骤6 使'Fjob'列都大写

stud_alcoh['Fjob'].apply(captalizer)

输出:

0       TEACHER
1 OTHER
2 OTHER
3 SERVICES
4 OTHER
5 OTHER
6 OTHER
7 TEACHER
8 OTHER
9 OTHER
10 HEALTH
11 OTHER
12 SERVICES
13 OTHER
14 OTHER
15 OTHER
16 SERVICES
17 OTHER
18 SERVICES
19 OTHER
20 OTHER
21 HEALTH
22 OTHER
23 OTHER
24 HEALTH
25 SERVICES
26 OTHER
27 SERVICES
28 OTHER
29 TEACHER
...
365 OTHER
366 SERVICES
367 SERVICES
368 SERVICES
369 TEACHER
370 SERVICES
371 SERVICES
372 AT_HOME
373 OTHER
374 OTHER
375 OTHER
376 OTHER
377 SERVICES
378 OTHER
379 OTHER
380 TEACHER
381 OTHER
382 SERVICES
383 SERVICES
384 OTHER
385 OTHER
386 AT_HOME
387 OTHER
388 SERVICES
389 OTHER
390 SERVICES
391 SERVICES
392 OTHER
393 OTHER
394 AT_HOME
Name: Fjob, dtype: object

步骤7 打印数据集的最后几行元素

stud_alcoh.tail()

输出:

步骤8 注意到原始数据框仍然是小写字母,接下来改进一下

stud_alcoh['Mjob'] = stud_alcoh['Mjob'].apply(captalizer)
stud_alcoh['Fjob'] = stud_alcoh['Fjob'].apply(captalizer)
stud_alcoh.tail()

输出:

步骤9 创建一个名为majority的函数,它返回一个布尔值到一个名为legal_drinker的新列(多数年龄大于17岁)

def majority(x):
if x > 17:
return True
else:
return False
stud_alcoh['legal_drinker'] = stud_alcoh['age'].apply(majority)
stud_alcoh.head()

输出:

步骤10 将数据集的每个数字乘以10

def times10(x):
if type(x) is int:
return 10 * x
return x
stud_alcoh.applymap(times10).head(10)

输出:

参考链接:

1、http://pandas.pydata.org/pandas-docs/stable/cookbook.html#cookbook

2、https://www.analyticsvidhya.com/blog/2016/01/12-pandas-techniques-python-data-manipulation/

3、https://github.com/guipsamora/pandas_exercises

pandas练习(四)--- 应用Apply函数的更多相关文章

  1. pandas DataFrame apply()函数(1)

    之前已经写过pandas DataFrame applymap()函数 还有pandas数组(pandas Series)-(5)apply方法自定义函数 pandas DataFrame 的 app ...

  2. pandas DataFrame apply()函数(2)

    上一篇pandas DataFrame apply()函数(1)说了如何通过apply函数对DataFrame进行转换,得到一个新的DataFrame. 这篇介绍DataFrame apply()函数 ...

  3. 【转】Pandas的Apply函数——Pandas中最好用的函数

    转自:https://blog.csdn.net/qq_19528953/article/details/79348929 import pandas as pd import datetime #用 ...

  4. pandas的map函数与apply函数的区别

    import pandas as pd import numpy as np df = pd.DataFrame(np.random.randn(4,3),columns=list("ABC ...

  5. pandas.apply()函数

    1.介绍 apply函数是pandas里面所有函数中自由度最高的函数.该函数如下: DataFrame.apply(func, axis=0, broadcast=False, raw=False, ...

  6. js中bind、call、apply函数的用法

    最近一直在用 js 写游戏服务器,我也接触 js 时间不长,大学的时候用 js 做过一个 H3C 的 web的项目,然后在腾讯实习的时候用 js 写过一些奇怪的程序,自己也用 js 写过几个的网站.但 ...

  7. (2)apply函数及其源码

      本文原创,转载请注明出处,本人Q1273314690(交流学习) 总结: 就是MARGIN决定了你的FUN调用几次,每次传递给你的是什么维度的内容,而...是传递给FUN的(每次调用的时候都会被传 ...

  8. 博文推荐】Javascript中bind、call、apply函数用法

    [博文推荐]Javascript中bind.call.apply函数用法 2015-03-02 09:22 菜鸟浮出水 51CTO博客 字号:T | T 最近一直在用 js 写游戏服务器,我也接触 j ...

  9. JavaScript中bind、call、apply函数用法详解

    在给我们项目组的其他程序介绍 js 的时候,我准备了很多的内容,但看起来效果不大,果然光讲还是不行的,必须动手.前几天有人问我关于代码里 call() 函数的用法,我让他去看书,这里推荐用js 写服务 ...

  10. (原)torch的apply函数

    转载请注明出处: http://www.cnblogs.com/darkknightzh/p/6221633.html torch中的apply函数通过可以不断遍历model的各个模块.实际上其使用的 ...

随机推荐

  1. python unittest框架中doCleanups妙用

    偶看unittest官方文档中,发现一个很好用的功能函数doCleanups,看看官方是怎么解释的: doCleanups() This method is called unconditionall ...

  2. Root Motion的脚本处理

    一.Apply RootMotion的作用 Apply RootMotion:控制角色在场景中动画的运动.角色动画驱动角色运动,类似于在游戏中直接使用动画,提高了动画的使用效率. Root Motio ...

  3. springMVC去掉静态资源的拦截

    前端控制器的配置 <!-- springmvc的前端控制器 --> <servlet> <servlet-name>springMVC</servlet-na ...

  4. React 事件处理函数

    触摸事件:onTouchCancel\onTouchEnd\onTouchMove\onTouchStart (只会在移动设备上接受) 键盘事件:onKeyDown\onKeyPress\onKeyU ...

  5. Python3设置在shell脚本中自动补全功能的方法

    本篇博客将会简短的介绍,如何在ubuntu中设置python自动补全功能. 需求:由于python中的内建函数较多,我们在百纳乘时,可能记不清函数的名字,同时自动补全功能,加快了我们开发的效率. 方法 ...

  6. ubuntu1304无法启动桌面系统的问题和解决

    今天上班,从oracle官网下载个最新的virtual box,安装后重启电脑,进入桌面后竟然没有菜单栏和启动栏了(就是最上边的bar和左边的应用栏),而且所有启动的窗口都没有菜单栏,终端什么的也都没 ...

  7. codeforces 892 - A/B/C

    题目链接:https://cn.vjudge.net/problem/CodeForces-892A Jafar has n cans of cola. Each can is described b ...

  8. HDU - 5818 Joint Stacks 比较大の模拟,stack,erase

    https://vjudge.net/problem/HDU-5818 题意:给你两个栈AB,有常规push,pop操作,以及一个merge操作,merge A B 即将A.B的元素按照入栈顺序全部出 ...

  9. Oracle体系结构之oracle密码文件管理

    密码文件 密码文件作用: 密码文件用于dba用户的登录认证. dba用户:具备sysdba和sysoper权限的用户,即oracle的sys和system用户. 本地登录: 1)操作系统认证: [or ...

  10. python3学习笔记(9)_closure

    #python 学习笔记 2017/07/13 # !/usr/bin/env python3 # -*- conding:utf-8 -*- #从高阶函数的定义,我们可以知道,把函数作为参数的函数, ...