2018.03.27 pandas duplicated 和 replace 使用
#.duplicated / .replace
import numpy as np
import pandas as pd
s = pd.Series([1,1,1,1,1,2,3,3,3,4,4,5,6,6])
print(s)
print(s.duplicated())#True表示重复 得到布尔型
print(s[s.duplicated() == False])#
#通过布尔类型的判断来得到不重复的值 s_re = s.drop_duplicates()#直接去除重复值
#inplace=True 表示直接修改原来的值
print(s_re)
print('------') #DataFrame测试
df = pd.DataFrame({'key1':['a','a',3,4,5],
'key2':['a','a','b','b','c']})
print(df)
print('---------------------')
print(df.duplicated())
print('---------------------')
print(df.drop_duplicates())
结果:
0 1
1 1
2 1
3 1
4 1
5 2
6 3
7 3
8 3
9 4
10 4
11 5
12 6
13 6
dtype: int64
0 False
1 True
2 True
3 True
4 True
5 False
6 False
7 True
8 True
9 False
10 True
11 False
12 False
13 True
dtype: bool
0 1
5 2
6 3
9 4
11 5
12 6
dtype: int64
0 1
5 2
6 3
9 4
11 5
12 6
dtype: int64
------
key1 key2
0 a a
1 a a
2 3 b
3 4 b
4 5 c
---------------------
0 False
1 True
2 False
3 False
4 False
dtype: bool
---------------------
key1 key2
0 a a
2 3 b
3 4 b
4 5 c
#.replace()
s = pd.Series(list('aaabbbcdd'))
print(s)
print(s.replace('a',np.nan))
print(s.replace(['a','d'],np.nan))
print(s.replace({'a':'Hello','d':'World'}))
结果:
0 a
1 a
2 a
3 b
4 b
5 b
6 c
7 d
8 d
dtype: object
0 NaN
1 NaN
2 NaN
3 b
4 b
5 b
6 c
7 d
8 d
dtype: object
0 NaN
1 NaN
2 NaN
3 b
4 b
5 b
6 c
7 NaN
8 NaN
dtype: object
0 Hello
1 Hello
2 Hello
3 b
4 b
5 b
6 c
7 World
8 World
dtype: object
2018.03.27 pandas duplicated 和 replace 使用的更多相关文章
- 2018.03.27 pandas concat 和 combin_first使用
# 连接和修补concat.combine_first 沿轴的堆叠连接 # 连接concatimport pandas as pdimport numpy as np s1 = pd.Series([ ...
- 【VSCode】Windows下VSCode编译调试c/c++【更新 2018.03.27】
--------– 2018.03.27 更新--------- 便携版已更新,点此获取便携版 已知BUG:中文目录无法正常调试 用于cpptools 0.15.0插件的配置文件更新 新的launch ...
- 2018.03.27 python pandas merge join 使用
#2.16 合并 merge-join import numpy as np import pandas as pd df1 = pd.DataFrame({'key1':['k0','k1','k2 ...
- 2018/03/27 每日一个Linux命令 之 cron
Cron 用于配置定时任务. -- 环境为 Ubuntu16-04 -- 先说说怎么配置一个简单的定时任务.直观的可以看到效果. 之前在网上查找资料,对Shell编程不熟悉的实在是很头疼,走了不少弯路 ...
- 网易2018.03.27算法岗,三道编程题100%样例AC题解
博主欢迎转载,但请给出本文链接,我尊重你,你尊重我,谢谢~http://www.cnblogs.com/chenxiwenruo/p/8660814.html特别不喜欢那些随便转载别人的原创文章又不给 ...
- 数据分析03 /基于pandas的数据清洗、级联、合并
数据分析03 /基于pandas的数据清洗.级联.合并 目录 数据分析03 /基于pandas的数据清洗.级联.合并 1. 处理丢失的数据 2. pandas处理空值操作 3. 数据清洗案例 4. 处 ...
- 20172319 2018.03.27-04.05 《Java程序设计》第4周学习总结
20172319 2018.03.27-04.05 <Java程序设计>第4周学习总结 教材学习内容总结 第四章 编写类 类与对象的回顾:对象是有状态的,状态由对象的属性值确定.属性由类中 ...
- Pandas: 使用str.replace() 进行文本清洗
str.replace()可以一次处理一整个Series.str.replace()的正式形式为 Series.str.replace(pat, repl) ,其中pat为想要寻找的模式,一般为正则表 ...
- 2018/03/31 每日一个Linux命令 之 date
date 命令主要用于查看和修改时间和时区 -- 这里主要学习基本的查看和设置时间和时区的方法. 直接显示日期 date '+%D' 效果 vagrant@hong:~$ date '+%D' 03/ ...
随机推荐
- 关闭mmu和cache
处理器内部寄存器,访问速度最快,但是数量少 TCM:紧耦合存储器(Cache.主存储器) 辅助存储器(Flash.SD等) Cache是一种容量小但是存取速度非常快的存储器 它保存最近用到的存储器中的 ...
- [工具] BurpSuite--快速生成CSRF POC
我们使用工具分析出存在csrf漏洞时,可以快速生成这个请求的poc,下面我们来看看怎么快速生成 0x00 上图是通过proxy,点击action,选择上图的选项即可生成这个请求的CSRF Poc了 当 ...
- java知识
DiskFileUploadhttps://blog.csdn.net/FightingITPanda/article/details/79742631 import java.util.ArrayL ...
- 如何给自己的Python项目制作安装包
Packaging Python Projects¶ 本教程将指导您如何打包一个简单的Python项目.它将向您展示如何添加必要的文件和结构来创建包,如何构建包以及如何将其上载到Python包索引. ...
- 如何使用windows performance recorder
先下载WPA TOOLS:从该地址下载,选最新的版本,然后可以只选择下载WPA工具 后面编写XML文件等等,可以参考这篇文章. 需要注意: 用管理员启动cmd后,如果想运行特定路径的文件,需要带上绝对 ...
- DevExpress WPF v19.1新版亮点:PDF Viewer等控件新功能
行业领先的.NET界面控件DevExpress 日前正式发布v19.1版本,本站将以连载的形式介绍各版本新增内容.在本系列文章中将为大家介绍DevExpress WPF v19.1中新增的一些控件及部 ...
- 通信接口是webservice快还是scoket快解决方案
通信接口是webservice快还是scoket快webservice和scoket都可以做为通信接口,一个走HTTP访问,一个走TCP协议访问 问1:通讯速度是webservice快还是scoket ...
- 安装nginx 以及nginx负载均衡
a 安装 [root@localhost ~]# yum -y install gcc automake autoconf libtool make yum install gcc gcc-c++ ...
- UITextField实时监听输入文本的变化
[textField addTarget:self action:@selector(textFieldChanged:) forControlEvents:UIControlEventEditing ...
- 查看是否安装jdk及路径
JDK能否曾经装置,可以在cmd窗口里输出java -version,假定没有提示出错,就表示曾经装置. JDK的装置途径,可以输出java -verbose,会前往很多信息,其中就包括了JDK的装置 ...