Python数据处理之合并、去重、分组几个操作方法,技巧

数据处理一直是数据分析中极为重要的一个环节,现在就来看看数据合并、数据去重、数据分组几个操作方法。

 

数据合并

在pandas中可以通过merge对数据进行合并操作。

Python数据处理之合并、去重、分组几个操作方法,技巧

 

结果为:

Python数据处理之合并、去重、分组几个操作方法,技巧

 

print(data2)

结果为:

Python数据处理之合并、去重、分组几个操作方法,技巧

 

 

print(pd.merge(data1,data2))

结果为:

Python数据处理之合并、去重、分组几个操作方法,技巧

 

可以看到data1和data2中用于相同标签的字段显示,而其他字段则被舍弃,这相当于SQL中做inner join连接操作。

此外还有outer,ringt,left等连接方式,用关键词how的进行表示。

Python数据处理之合并、去重、分组几个操作方法,技巧

 

结果为:

Python数据处理之合并、去重、分组几个操作方法,技巧

 

 

两个数据框中如果列名不同的情况下,我们可以通过指定letf_on 和right_on两个参数把数据连接在一起

print(pd.merge(data3,data4,left_on='level1',right_on='level2',how='left'))

结果为:

Python数据处理之合并、去重、分组几个操作方法,技巧

 

其他详细参数说明

Python数据处理之合并、去重、分组几个操作方法,技巧

 

 

重叠数据合并

有时候我们会遇到重叠数据需要进行合并处理,此时可以用comebine_first函数。

Python数据处理之合并、去重、分组几个操作方法,技巧

 

结果为:

Python数据处理之合并、去重、分组几个操作方法,技巧

 

可以看到相同标签下的内容优先显示data3的内容,如果一个数据框中的某一个数据是缺失的,此时另外一个数据框中的元素就会补上

这里的用法类似于np.where(isnull(a),b,a)

数据去重

Python数据处理之合并、去重、分组几个操作方法,技巧

 

结果为:

Python数据处理之合并、去重、分组几个操作方法,技巧

 

print(data.duplicated())

结果为:

Python数据处理之合并、去重、分组几个操作方法,技巧

 

可以看出第三行是重复第二行的数据所以,显示结果为True

另外用drop_duplicates方法可以去除重复行

print(data.drop_duplicates())

结果为:

Python数据处理之合并、去重、分组几个操作方法,技巧

 

数据分组

data=[11,15,18,20,25,26,27,24]bins=[15,20,25]print(data)print(pd.cut(data,bins))

结果为:

[11, 15, 18, 20, 25, 26, 27, 24][NaN, NaN, (15, 20], (15, 20], (20, 25], NaN, NaN, (20, 25]]

Categories (2, object): [(15, 20] < (20, 25]]

可以看出分组后的结果,不在分组内的数据显示为na值,其他则显示数据所在的分组。

print(pd.cut(data,bins).labels)

结果为:

[-1 -1 0 0 1 -1 -1 1]

显示所在分组排序标签

print(pd.cut(data,bins).levels)

结果为:

Index(['(15, 20]', '(20, 25]'], dtype='object')

显示所以分段标签

print(value_counts(pd.cut(data,bins)))

结果为:

Python数据处理之合并、去重、分组几个操作方法,技巧

 

显示每个分段值得个数

此外还有一个qcut的函数可以对数据进行4分位切割,用法和cut类似。

更多Python视频、源码、资料加群683380553免费获取

posted @ 2022-10-07 20:55  I'm_江河湖海  阅读(14)  评论(0编辑  收藏  举报