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/ ...
随机推荐
- C# wpf 使用资源文件 resx
随意新建一个wpf应用 在cs代码编辑,增加 using System.Resources; 放在最上 在方案新建文件夹 名 文件 在 文件 新建资源文件 资源.resx 资源.resx 添加字符串 ...
- centos7下通过LVS的DR模式实现负载均衡访问
一.两台服务器作为real server ,一台作为director director:172.28.18.69 vip:172.28.18.70 real server1:172.28.18.71 ...
- php产品细节图多图上传示例代码 无刷新
前台文件代码 upload.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...
- laravel 中数据库查询结果自动转数组
今天在项目中再次碰见laravel中从数据库中查询到的结果是对象,用toArray也不好用,之前改过一次,印象中是在/confing/database.php, 'fetch' => PD ...
- POJ-2552-The Bottom of a Graph 强连通分量
链接: https://vjudge.net/problem/POJ-2553 题意: We will use the following (standard) definitions from gr ...
- vue 父组件使用keep-alive和infinite-scroll导致在子组件触发父组件的infinite-scroll方法
(vue.js)vue 父组件使用keep-alive和infinite-scroll导致在子组件触发父组件的infinite-scroll方法”问题疑问,本网通过在网上对“ (vue.js)vue ...
- 10.django的一些方法理解
django get_object_or_404 get_object_or_404是django的django shortcuts的方法,用来查询数据,或者抛出一个DoesNotExist的异常 用 ...
- springboot 出现异常 java.net.BindException: Address already in use: bind
java.net.BindException: Address already in use: bind
- Linux入门培训教程 常见linux命令释义
快到中午吃饭了,然后忽然想起来samba里面没有添加用户.于是乎,就玩弄起了samba. Samba三下五除二就安装好了,想想window里面不断的点击下一步,还要小心提防各种隐藏再角落里的绑定软件. ...
- mysql jdbcTemplate访问
String sql = "select * from xxx_photo_info where user_id in (:userIds)"; userIds从dao传过来时必须 ...