使用duplicated()函数检测重复的行,返回元素为布尔类型的Series对象,每一个元素对应一行,若是该行不是第一次出现,则元素为True html
- keep参数:指定保留哪一重复的行数据
import numpy as np import pandas as pd from pandas import Series,DataFrame #建立一个df np.random.seed(1) df = DataFrame(data=np.random.randint(0,100,size=(8,4))) df
#手动将df的某几行设置成相同的内容 df.iloc[2] = [66,66,66,66] df.iloc[4] = [66,66,66,66] df.iloc[7] = [66,66,66,66] df
df.duplicated(keep='last')
indexs = df.loc[df.duplicated(keep='last')].index df.drop(labels=indexs,axis=0)
使用drop_duplicates()函数删除重复的行数组
df.drop_duplicates(keep='last')
使用replace()函数,对values进行映射操做 app
map()中可使用方法,能够是自定义的方法dom
eg:map({to_replace:value})函数
map当作一种运算工具,至于执行何种运算,是由map函数的参数决定的(参数:lambda,函数)工具
注意:并非任何形式的函数均可以做为map的参数。只有当一个函数具备一个参数且有返回值,那么该函数才能够做为map的参数。spa
使用df.std()函数能够求得DataFrame对象每一列的标准差 3d
- take()函数接受一个索引列表,用数字表示,使得df根据列表中索引的顺序进行排序 - eg:df.take([1,3,4,2,5])
能够借助np.random.permutation()函数随机排序code
random_df = df.take(np.random.permutation(1000),axis=0).take(np.random.permutation(3),axis=1) random_df[0:100]
数据聚合是数据处理的最后一步,一般是要使每个数组生成一个单一的数值。orm
数据分类处理:
数据分类处理的核心:
- groupby()函数 - groups属性查看分组状况 - eg: df.groupby(by='item').groups
from pandas import DataFrame,Series df = DataFrame({'item':['Apple','Banana','Orange','Banana','Orange','Apple'], 'price':[4,3,3,2.5,4,2], 'color':['red','yellow','yellow','green','green','green'], 'weight':[12,20,50,30,20,44]}) df