pandas DataFrame 根据多列的值做判断,生成新的列值实例


Posted in Python onMay 18, 2018

环境:Python3.6.4 + pandas 0.22

主要是DataFrame.apply函数的应用,如果设置axis参数为1则每次函数每次会取出DataFrame的一行来做处理,如果axis为1则每次取一列。

如代码所示,判断如果城市名中含有ing字段且年份为2016,则新列test值赋为1,否则为0.

import numpy as np 
import pandas as pd 
 
data = {'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen', 'Hangzhou', 'Chongqing'], 
 'year': [2016,2016,2015,2017,2016, 2016], 
 'population': [2100, 2300, 1000, 700, 500, 500]} 
frame = pd.DataFrame(data, columns = ['year', 'city', 'population', 'debt']) 
 
def function(a, b): 
 if 'ing' in a and b == 2016: 
 return 1 
 else: 
 return 0 
print(frame, '\n') 
frame['test'] = frame.apply(lambda x: function(x.city, x.year), axis = 1) 
print(frame)

运行结果如下:

pandas DataFrame 根据多列的值做判断,生成新的列值实例

另外Series类型也有apply函数,用法示例如下:

import numpy as np 
import pandas as pd 
 
data = {'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen', 'Hangzhou', 'Chongqing'], 
 'year': [2016,2016,2015,2017,2016, 2016], 
 'population': [2100, 2300, 1000, 700, 500, 500]} 
frame = pd.DataFrame(data, columns = ['year', 'city', 'population', 'debt']) 
 
print(frame, '\n') 
frame['panduan'] = frame.city.apply(lambda x: 1 if 'ing' in x else 0) 
print(frame)

运行结果如下:

pandas DataFrame 根据多列的值做判断,生成新的列值实例

以上这篇pandas DataFrame 根据多列的值做判断,生成新的列值实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现判断数组是否包含指定元素的方法
Jul 15 Python
一些常用的Python爬虫技巧汇总
Sep 28 Python
python3.6连接MySQL和表的创建与删除实例代码
Dec 28 Python
python简单商城购物车实例代码
Mar 15 Python
python入门:这篇文章带你直接学会python
Sep 14 Python
python 含子图的gif生成时内存溢出的方法
Jul 07 Python
Python 实现将数组/矩阵转换成Image类
Jan 09 Python
tensorflow实现在函数中用tf.Print输出中间值
Jan 21 Python
Python dict和defaultdict使用实例解析
Mar 12 Python
4种非常实用的python内置数据结构
Apr 28 Python
浅析Python中的套接字编程
Jun 22 Python
python随机打印成绩排名表
Jun 23 Python
pandas.loc 选取指定列进行操作的实例
May 18 #Python
解决Pycharm中import时无法识别自己写的程序方法
May 18 #Python
解决pycharm无法调用pip安装的包问题
May 18 #Python
解决已经安装requests,却依然提示No module named requests问题
May 18 #Python
Python实现获取nginx服务器ip及流量统计信息功能示例
May 18 #Python
解决Pycharm无法import自己安装的第三方module问题
May 18 #Python
完美解决Pycharm无法导入包的问题 Unresolved reference
May 18 #Python
You might like
安装PHP可能遇到的问题“无法载入mysql扩展” 的解决方法
2007/04/16 PHP
laravel学习教程之关联模型
2016/07/30 PHP
php rsa 加密,解密,签名,验签详解
2016/12/06 PHP
TP5框架实现一次选择多张图片并预览的方法示例
2020/04/04 PHP
jquery焦点图片切换(数字标注/手动/自动播放/横向滚动)
2013/01/24 Javascript
JS保留两位小数 四舍五入函数的小例子
2013/11/20 Javascript
js中call与apply的用法小结
2013/12/28 Javascript
jquery提交form表单简单示例分享
2014/03/03 Javascript
jQuery网页右侧广告跟随滚动代码分享
2020/04/20 Javascript
浅析jQuery 3.0中的Data
2016/06/14 Javascript
AngularJS实现Input格式化的方法
2016/11/07 Javascript
JavaScript实现的XML与JSON互转功能详解
2017/02/16 Javascript
基于js Canvas实现二次贝塞尔曲线
2018/12/25 Javascript
微信小程序MUI导航栏透明渐变功能示例(通过改变opacity实现)
2019/01/24 Javascript
微信小程序设置全局请求URL及封装wx.request请求操作示例
2019/04/02 Javascript
解决vue-router 嵌套路由没反应的问题
2020/09/22 Javascript
[01:02:32]DOTA2-DPC中国联赛 正赛 iG vs PSG.LGD BO3 第二场 2月26日
2021/03/11 DOTA
Python中的tuple元组详细介绍
2015/02/02 Python
python使用socket连接远程服务器的方法
2015/04/29 Python
用Python编写一个每天都在系统下新建一个文件夹的脚本
2015/05/04 Python
python自定义类并使用的方法
2015/05/07 Python
PyTorch学习笔记之回归实战
2018/05/28 Python
python中不能连接超时的问题及解决方法
2018/06/10 Python
Python基于最小二乘法实现曲线拟合示例
2018/06/14 Python
Python3 列表,数组,矩阵的相互转换的方法示例
2019/08/05 Python
python实现复制文件到指定目录
2019/10/16 Python
python画环形图的方法
2020/03/25 Python
Python基于gevent实现文件字符串查找器
2020/08/11 Python
浅析PyCharm 的初始设置(知道)
2020/10/12 Python
巴西24小时在线药房:Drogasil
2020/06/20 全球购物
酒店节能减排方案
2014/05/26 职场文书
班子四风对照检查材料思想汇报
2014/09/29 职场文书
亚布力滑雪场导游词
2015/02/09 职场文书
世界气象日活动总结
2015/02/27 职场文书
红领巾广播站广播稿
2015/08/19 职场文书
高中生社会实践心得体会
2016/01/14 职场文书