pandas(九)数据转换
移除重复数据
dataframe中常常会出现重复行,DataFrame对象的duplicated方法返回一个布尔型的Series对象,可以表示各行是否是重复行。还有一个drop_duplicates方法,用于返回一个移除了重复行的DataFrame。
In [36]: data = DataFrame({'k1':['one']*3+['two']*4,"k2":[1,1,2,3,3,4,4]})
In [37]: data
Out[37]:
k1 k2
0 one 1
1 one 1
2 one 2
3 two 3
4 two 3
5 two 4
6 two 4
#duplicated方法用于判断是否重复行,返回的是一个Series对象
In [39]: data.duplicated()
Out[39]:
0 False
1 True
2 False
3 False
4 True
5 False
6 True
dtype: bool
#drop_duplicates,剔除重复行,默认检查的是所有列的集合。
In [41]: data.drop_duplicates()
Out[41]:
k1 k2
0 one 1
2 one 2
3 two 3
5 two 4
#指定部分列进行重复判断和删除
In [42]: data.duplicated('k1')
Out[42]:
0 False
1 True
2 True
3 False
4 True
5 True
6 True
dtype: bool
In [43]: data.drop_duplicates('k2')
Out[43]:
k1 k2
0 one 1
2 one 2
3 two 3
5 two 4
是否已经发现,duplicated和drop_duplicates默认保留的都是第一个出现的值组合,传入keep=‘last’,则保留最后一个出现的值。
keep的选项:
‘first’:默认保留第一个出现的值。
‘last’:保留最后一个出现的值
False:使所有的duplicates为True
In [49]: data.drop_duplicates(keep = 'last')
Out[49]:
k1 k2
1 one 1
2 one 2
4 two 3
6 two 4 In [50]: data.drop_duplicates(keep = False)
Out[50]:
k1 k2
2 one 2
利用函数或映射进行数据转换
pandas(九)数据转换的更多相关文章
- 利用Python进行数据分析(14) pandas基础: 数据转换
数据转换指的是对数据的过滤.清理以及其他的转换操作. 移除重复数据 DataFrame里经常会出现重复行,DataFrame提供一个duplicated()方法检测各行是否重复,另一个drop_dup ...
- 利用Python进行数据分析 基础系列随笔汇总
一共 15 篇随笔,主要是为了记录数据分析过程中的一些小 demo,分享给其他需要的网友,更为了方便以后自己查看,15 篇随笔,每篇内容基本都是以一句说明加一段代码的方式, 保持简单小巧,看起来也清晰 ...
- Python股票分析系列——基础股票数据操作(二).p4
该系列视频已经搬运至bilibili: 点击查看 欢迎来到Python for Finance教程系列的第4部分.在本教程中,我们将基于Adj Close列创建烛台/ OHLC图,这将允许我介绍重新采 ...
- TensorFlow 的使用步骤
使用 TensorFlow 的基本步骤 学习目标: 学习基本的 TensorFlow 概念 在 TensorFlow 中使用 LinearRegressor 类并基于单个输入特征预测各城市街区的房屋价 ...
- 学习笔记(二):使用 TensorFlow 的起始步骤(First Steps with TensorFlow)
目录 1.工具包 TensorFlow 张量 (Tensor) 图 (graph) TensorBoard 2.tf.estimator API Estimator 预创建的 Estimator (p ...
- 使用TensorFlow的基本步骤
学习任务 学习使用TensorFlow,并以california的1990年的人口普查中的城市街区的房屋价值中位数作为预测目标,使用均方根误差(RMSE)评估模型的准确率,并通过调整超参数提高模型的准 ...
- pandas 数据类型研究(一)数据转换
当利用pandas进行数据处理的时候,经常会遇到数据类型的问题,当拿到数据的时候,首先需要确定拿到的是正确类型的数据,一般通过数据类型的转化,这篇文章就介绍pandas里面的数据类型(data typ ...
- Pandas系列(九)-分组聚合详解
目录 1. 将对象分割成组 1.1 关闭排序 1.2 选择列 1.3 遍历分组 1.4 选择一个组 2. 聚合 2.1 一次应用多个聚合操作 2.2 对DataFrame列应用不同的聚合操作 3. t ...
- 小白学 Python 数据分析(10):Pandas (九)数据运算
人生苦短,我用 Python 前文传送门: 小白学 Python 数据分析(1):数据分析基础 小白学 Python 数据分析(2):Pandas (一)概述 小白学 Python 数据分析(3):P ...
随机推荐
- find命令应用exec及xargs
find最普通的用法是查找文件,然后要对文件进行处理就需要用到参数-exec. 先看下manpage中介绍: -exec command ; Execute command; status is re ...
- BZOJ2820 YY的GCD 莫比乌斯+系数前缀和
/** 题目:BZOJ2820 YY的GCD 链接:http://www.cogs.pro/cogs/problem/problem.php?pid=2165 题意:神犇YY虐完数论后给傻×kAc出了 ...
- 请说明SQLServer中delete from tablea & truncate table tablea的区别
请说明SQLServer中delete from tablea & truncate table tablea的区别 解答:两者都可以用来删除表中所有的记录.区别在于:truncate是DDL ...
- sql server 2008安装要求
sql server 2008安装要求 新部署的R2需要被安装在格式化为NTFS格式的磁盘上: 微软的.NET Framework 3.5 SP1 微软Windows Installer 4.5或以上 ...
- javascript汇总(转)
字符串操作:http://www.cnblogs.com/magetu/archive/2012/12/18/javascript-string-methods-reference.html 几种对象 ...
- java字符编码(转)
转载:http://blog.csdn.net/peach99999/article/details/7231247 深入讨论java乱码问题 几种常见的编码格式 为什么要编码 不知道大家有没有想过一 ...
- 【ARDUINO】串口无法打开问题
1.查看是否串口被锁 sudo arduino ls /var/lock sudo rm /var/lock/LCK..ttyACM* 2.查看arduino安装位置 dpkg -S XXXX 3.原 ...
- VS中常用的环境变量
环境变量名 含义 $(SolutionDir) 解决方案目录:即.sln文件所在路径 $(ProjectDir) 项目根目录:, 即.vcxproj文件所在路径 $(Configuration) 当前 ...
- Oracle之完全卸载
1. 开始->设置->控制面板->管理工具->服务 停止所有Oracle服务. 2. 开始->程序->Oracle - OraHome81->Oracle I ...
- 关于sqlSessionTemplate
SqlSessionTemplate是MyBatis-Spring的核心.这个类负责管理MyBatis的SqlSession,调用MyBatis的SQL方法,翻译异常.SqlSessionTempla ...