python dataframe 合并乱序列表_Python数据处理--删除重复项、数值替换和表合并

导入需要的包: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'])
  • 得到如下表:

ac906250d0c28e29f64afd84ffc9b970.png

Python处理重复数据

drop_duplicates函数删除重复值。以city列为例,city字段中存在重复值。默认情况下drop_duplicates()将删除后出现的重复值。增加keep=‘last’参数后将删除最先出现的重复值,保留最后的值。下面是具体的代码和比较结果。

df["city"].drop_duplicates()

9adf587a3dae75c441f0d7ecda9afea2.png
保留先出现的重复值

16124bb54cec1dc6122e49ce51f1099b.png
保留后面出现的重复值

数据的替换和修改

Python中使用replace函数实现数据替换。数据表中city字段上海存在两种写法,分别为shanghai和SH。我们使用replace函数对SH进行替换。

7f1359aea5dcef0f569ff022f34db7c5.png
替换值

数据表合并

首先是对不同的数据表进行合并,我们这里创建一个新的数据表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]})

91848daa4fd94e544c7fdf37ad1e09d0.png

使用merge函数对两个数据表进行合并:

d8c87b57e36be2216b80a0c93a83c2cd.png
用inner方式合并

除了inner方式以外,合并的方式还有left,right和outer方式。只要在how=“left/right/outer”

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值