Pyhton - 数据分析之pandas模块一览总表( 五 )


.(by=None, axis=0, level=None, =True, sort=True, =True, =False, =True)
分组操作包括拆分对象、应用函数和组合结果的一些组合 。这可以用于对大量数据进行分组,并对这些组进行计算操作 。将数据根据某个(多个)字段划分为不同的群体(group)进行分析 。#数据集按照score字段进行划分/分组,得到一个对象=df.('score'). 。#根据对应组的数据值,选择一个组.(91) 。#通过 agg() 函数可以对分组对象应用多个聚合函数['score'].agg([np.size,np.mean,np.std]),[‘score’].agg({‘’:‘’,‘age’:‘mean’}) 。#对每一条数据求得相应的结果,同一组内的样本会有相同的值,组内求完均值后会按照原索引的顺序返回结果data[''] = data.('')[''].('mean') 。#虽然说apply拥有更大的灵活性,但apply的运行效率会比agg和更慢 = data.('',=False).apply()
.(=[‘’], keep=‘first’, =True)
根据某列去重 。【列表的形式填写要进行去重的列名,默认为 None 表示根据所有列进行 。可选参数:默认值 first保留第一次出现的重复行,删除后面的重复行; last删除重复项,保留最后一次出现;False 删除所有重复项 。默认为 False 删除重复项后返回副本,True直接在原数据上删除重复项 。】#df.(=[‘’], keep=‘first’, =True)
df.(level=None, drop=False, =False, =0, =‘’)
重置索引 。【drop重新设置索引后是否将原索引作为新的一列并入,默认为False 。是否在原上改动,默认为False 。level如果索引(index)有多个列,仅从索引中删除level指定的列,默认删除所有列 。如果列名()有多个级别,决定被删除的索引将插入哪个级别,默认插入第一级 。如果列名()有多个级别,决定其他级别如何命名】
pd.(objs, axis=0, join=‘outer’, =False, keys=None, =None, names=None, sort=False, =False, copy=True)
实现纵向和横向连接合并,将数据连接后会形成一个新对象(或) 。【objs需要连接的数据,可以是多个或者,它是必传参数 。axis连接轴的方法,默认值为0,即按行连接,追加在行后面;值为1时追加到列后面(按列连接:axis=1) 。join合并方式,其他轴上的数据是按交集(inner)还是并集(outer)进行合并 。是否保留原来的索引 。keys连接关系,使用传递的键作为最外层级别来构造层次结构索引,就是给每个表指定一个一级索引 。names索引的名称,包括多层索引 。是否检测内容重复,参数为True时,如果合并的数据与原数据包含索引相同的行,则会报错 。copy如果为False,则不要深拷贝 。】
判断是否存在指定列名的数据
if 'A' in df:if 'A' in df.columns:if {'A', 'C'}.issubset(df.columns):if set(['A','C']).issubset(df.columns):
7. 缺失值处理 - 数据清洗
数据清洗是对一些没有用的数据进行处理的过程 。
函数说明
numpy.NaN 或 numpy.nan
为数据结构中的元素赋值为NaN 。#ser = pd.([0, 1, 2, np.NaN, 9], index=[‘red’, ‘blue’, ‘’, ‘white’, ‘green’]),ser[‘white’] = None
.(axis=0, how=‘any’, =None, =None, =False)
清洗空值,去除NaN的方式 。对象使用时,只要行或列有一个NaN元素,该行或列的全部元素都会被删除 。【axis默认为 0逢空值剔除整行,axis=1 表示逢空值去掉整列 。how默认为 ‘any’ 如果一行(或一列)里任何一个数据有出现 NA 就去掉整行,如果设置 how=‘all’ 一行(或列)都是 NA 才去掉这整行 。设置需要多少非空值的数据才可以保留下来的 。设置想要检查的列,如果是多个列,可以使用列名的 list 作为参数 。默认返回一个新的 不会修改源数据,如果设置True将计算得到的值直接覆盖之前的值并返回 None,修改的是源数据 。】