导入需要的包:numpy、pandas
import numpy as py
import pandas as pd
创建一个表:
- df = pd.DataFrame({"id":[1001,1002,1003,1004,1005,1006],
- "date":pd.date_range('20130102', periods=6),
- "city":['Beijing ', 'SH', ' guangzhou ', 'Shenzhen', 'shanghai', 'Beijing '],
- "age":[23,44,54,32,34,32],
- "category":['100-A','100-B','110-A','110-C','210-A','130-F'],
- "price":[1200,np.nan,2133,5433,np.nan,4432]},
- columns =['id','date','city','category','age','price'])
- 得到如下表:
Python处理重复数据
drop_duplicates函数删除重复值。以city列为例,city字段中存在重复值。默认情况下drop_duplicates()将删除后出现的重复值。增加keep=‘last’参数后将删除最先出现的重复值,保留最后的值。下面是具体的代码和比较结果。
df["city"].drop_duplicates()
数据的替换和修改
Python中使用replace函数实现数据替换。数据表中city字段上海存在两种写法,分别为shanghai和SH。我们使用replace函数对SH进行替换。
数据表合并
首先是对不同的数据表进行合并,我们这里创建一个新的数据表df1,并将df和df1两个数据表进行合并。python中通过merge函数一次性实现。下面建立df1数据表,用于和df数据表进行合并。
- df1=pd.DataFrame({"id":[1001,1002,1003,1004,1005,1006,1007,1008],
- "gender":['male','female','male','female','male','female','male','female'],
- "pay":['Y','N','Y','Y','N','Y','N','Y',],
- "m-point":[10,12,20,40,40,40,30,20]})
使用merge函数对两个数据表进行合并:
除了inner方式以外,合并的方式还有left,right和outer方式。只要在how=“left/right/outer”