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中map、any、all函数用法分析
Apr 21 Python
解决Python中由于logging模块误用导致的内存泄露
Apr 23 Python
python访问类中docstring注释的实现方法
May 04 Python
python复制文件的方法实例详解
May 22 Python
Python编码类型转换方法详解
Jul 01 Python
python删除某个字符
Mar 19 Python
tensorflow: variable的值与variable.read_value()的值区别详解
Jul 30 Python
python cumsum函数的具体使用
Jul 29 Python
pygame库实现俄罗斯方块小游戏
Oct 29 Python
Pytorch 多维数组运算过程的索引处理方式
Dec 27 Python
Anaconda配置pytorch-gpu虚拟环境的图文教程
Apr 16 Python
python 单机五子棋对战游戏
Apr 28 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设计模式 注册表模式(多个类的注册)
2012/02/05 PHP
PHP设计模式之简单投诉页面实例
2016/02/24 PHP
简单解决微信文章图片防盗链问题
2016/12/17 PHP
javascript hashtable 修正版 下载
2010/12/30 Javascript
javascript将数组插入到另一个数组中的代码
2013/01/10 Javascript
Jquery选择器中使用变量实现动态选择例子
2014/07/25 Javascript
jQuery源码分析之jQuery中的循环技巧详解
2014/09/06 Javascript
javascript实现简单的进度条
2015/07/02 Javascript
js判断浏览器类型及设备(移动页面开发)
2015/07/30 Javascript
JavaScript ParseFloat()方法
2015/12/18 Javascript
jQuery实现横向带缓冲的水平运动效果(附demo源码下载)
2016/01/29 Javascript
使用Object.defineProperty实现简单的js双向绑定
2016/04/15 Javascript
JS脚本实现动态给标签控件添加事件的方法
2016/06/02 Javascript
实例解析jQuery工具函数
2016/12/01 Javascript
Bootstrap php制作动态分页标签
2016/12/23 Javascript
jQuery实现手机上输入后隐藏键盘功能
2017/01/04 Javascript
angularjs+bootstrap实现自定义分页的实例代码
2017/06/19 Javascript
jQuery实现弹窗下底部页面禁止滑动效果
2017/12/19 jQuery
详解基于DllPlugin和DllReferencePlugin的webpack构建优化
2018/06/28 Javascript
vue底部加载更多的实例代码
2018/06/29 Javascript
解决vuejs 使用value in list 循环遍历数组出现警告的问题
2018/09/26 Javascript
使用element-ui table expand展开行实现手风琴效果
2019/03/15 Javascript
JavaScript setTimeout()基本用法有哪些
2020/11/04 Javascript
Python语言实现机器学习的K-近邻算法
2015/06/11 Python
Python实现统计代码行的方法分析
2017/07/12 Python
opencv python 基于KNN的手写体识别的实例
2018/08/03 Python
浅谈PySpark SQL 相关知识介绍
2019/06/14 Python
基于python使用tibco ems代码实例
2019/12/20 Python
python输入一个水仙花数(三位数) 输出百位十位个位实例
2020/05/03 Python
python基于exchange函数发送邮件过程详解
2020/11/06 Python
草莓网美国官网:Strawberrynet USA
2016/12/11 全球购物
英国排名第一的冲浪店:Ann’s Cottage
2020/06/21 全球购物
党员争先创优承诺书
2015/01/20 职场文书
党支部创先争优公开承诺书
2015/04/30 职场文书
市场营销计划书
2019/04/24 职场文书
PostgreSQL基于pgrouting的路径规划处理方法
2022/04/18 PostgreSQL