pandas数据处理学习笔记(三)

导入模块

import pandas as pd
import numpy as np

1.删除重复元素

创建一个包含重复元素的DataFrame对象

#创建一个包含重复元素的DataFrame对象
dframe = pd.DataFrame({'color':['w','w','r','r','w'],
                      'value':[2,1,3,3,2]})
dframe
'''返回
  color	value
0	w	2
1	w	1
2	r	3
3	r	3
4	w	2
'''

用DataFrame对象的duplicated()函数来检测重复的行

#用DataFrame对象的duplicated()函数来检测重复的行
dframe.duplicated()
'''返回
0    False
1    False
2    False
3     True
4     True
'''

返回重复的行

#返回重复的行
dframe[dframe.duplicated()]
'''返回
  color	value
3	r	3
4	w	2
'''

drop_duplicates()函数删除重复行

#drop_duplicates()函数删除重复行
dframe.drop_duplicates()
'''返回
  color	value
0	w	2
1	w	1
2	r	3
'''

2.映射

2.1替换元素replace()

dframe = pd.DataFrame({'color':['w','w','r','r','w'],
                      'value':[2,1,3,3,2]})
dframe
'''
	color	value
0	w	2
1	w	1
2	r	3
3	r	3
4	w	2
'''
newcolors = {
    'w':'white',
    'r':'red'
}
dframe.replace(newcolors)
'''
    color value
0	white	2
1	white	1
2	red	    3
3	red	    3
4	white	2
'''

replace()函数把NaN换成0值

ser = pd.Series([1,3,np.nan,9,np.nan])
ser.replace(np.nan,0)
'''返回
0    1.0
1    3.0
2    0.0
3    9.0
4    0.0
'''

2.2添加元素

map()函数

dframe = pd.DataFrame({'color':['w','b','r','y','g'],
                      'value':[2,1,3,3,2]})
dframe
'''返回
  color value
0	w	2
1	b	1
2	r	3
3	y	3
4	g	2
'''
ani = {
    'w':'cat',
    'b':'dog',
    'r':'rabbit',
    'y':'cow',
    'k':'kkk',
    'g':'duck'
    
}
dframe['ani'] = dframe['color'].map(ani)
dframe
'''返回
  color value ani
0	w	2	cat
1	b	1	dog
2	r	3	rabbit
3	y	3	cow
4	g	2	duck
'''

2.3替换索引

rename()函数

2.3.1重命名索引

dframe = pd.DataFrame({'color':['w','b','r','y','g'],
                      'value':[2,1,3,3,2]})
dframe

reindex = {
    0:'first',
    1:'second',
    2:'third',
    3:'forth',
    4:'fifth'
}
dframe.rename(reindex)

2.3.2重命名列

recolumn = {
    'color':'col',
    'value':'val'
}
dframe.rename(index=reindex,columns=recolumn)

2.3.3替换单个元素

dframe.rename(index={1:'first'},columns={'color':'col'})

rename()函数返回一个新的DataFrame对象,但原DataFrame对象仍保持不变。

若要使原DataFrame对象改变,可使用inplace选项

dframe.rename(columns={'color':'col'},inplace=True)
dframe

dframe返回


参考:

法比奥·内利. Python数据分析实战:第2版.北京:人民邮电出版社, 2019.11.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值