目录
使用Pandas删除重复的数据(符合条件行)使用Pandas
连接数据 根据所需合并不同来源的数据 按行连接 按列连接转换数据 转化为我们所需格式的数据 2.1删除数据 2.2添加数据 2.3数据排序数据分组
实验案例 1-3删除重复数据 1-4连接、转换多表的数据 1-5数据按指定列分组
开始
一、使用Pandas删除重复的数据
为什么要删除重复数据
如要统计给某商品付款的客户数目
一些用户出现不同银行卡支付
方法
实验案例1-3删除行数据drop_duplicates方法
import numpy
as np
import pandas
as pd
from pandas
import Series
, DataFrame
df_obj
= DataFrame
({'列 1': [1, 1, 2, 2, 3, 3, 3],
'列 2': ['a', 'a', 'b', 'b', 'c', 'c', 'c'],
'列 3': ['A', 'A', 'B', 'B', 'C', 'C', 'C']})
df_obj
.duplicated
()
df_obj
df_obj
.drop_duplicates
()
df_obj
df_obj
.drop_duplicates
(['列 3'])
df_obj
二、使用Pandas连接数据
就是把来源不同(多表)的数据进行连接,类似MySQL中的连接
方法
案例1-4连接数据concat方法
import numpy
as np
import pandas
as pd
from pandas
import Series
, DataFrame
df_obj
= DataFrame
(np
.arange
(36).reshape
(6,6))
df_obj_2
= DataFrame
(np
.arange
(15).reshape
(5,3))
pd
.concat
([df_obj
, df_obj_2
],axis
= 1)
df_obj
df_obj_2
0 1 2 3 4 5 0 1 2
0 0 1 2 3 4 5 0.0 1.0 2.0
1 6 7 8 9 10 11 3.0 4.0 5.0
2 12 13 14 15 16 17 6.0 7.0 8.0
3 18 19 20 21 22 23 9.0 10.0 11.0
4 24 25 26 27 28 29 12.0 13.0 14.0
5 30 31 32 33 34 35 NaN NaN NaN
pd
.concat
([df_obj
, df_obj_2
])
二、使用Pandas转换数据
方法
删除行drop方法添加行join方法追加表append方法
df_obj
.drop
([ 0 , 2 ])
df_obj
df_obj
.drop
([ 0 , 2] , axis
= 1)
df_obj
series_obj
= Series
(np
.arange
(6))
series_obj
.name
= '附加数据'
series_obj
df_data_added
= DataFrame
.join
(df_obj
, series_obj
)
df_data_added
0 1 2 3 4 5 附加数据
0 0 1 2 3 4 5 0
1 6 7 8 9 10 11 1
2 12 13 14 15 16 17 2
3 18 19 20 21 22 23 3
4 24 25 26 27 28 29 4
5 30 31 32 33 34 35 5
df_data_double
= df_data_added
.append
(df_data_added
)
df_data_double
df_data_double
= df_data_added
.append
(df_data_added
,ignore_index
=True)
df_data_double
df_sorted
= df_obj
.sort_values
(by
=[5], ascending
=[False])
df_sorted
三、数据分组
案例1-5sort方法
import numpy
as np
import pandas
as pd
from pandas
import Series
, DataFrame
address
= '../Data/mtcars.csv'
cars
= pd
.read_csv
(address
)
cars_columns
= ['车型', 'mpg', 'cyl', 'disp', 'hp', 'drat', 'wt', 'qsec', 'vs', 'am', 'gear', 'carb']
cars
.head
()
cars_groups
= cars
.groupby
(['cyl'])
cars_groups
.mean
()