1. 第二章:数据重构
1.1 数据的合并
数据的合并任务主要通过pandas中的concat、merge方法或是DataFrame的join、append方法来完成。
其中pandas.concat可以沿着一条轴将多个对象堆叠到一起,其参数设置如下:
pandas.merge()方法是基于值的连接
1.2 数据聚合与运算
本节主要是对于Groupby机制的理解:
分组运算主要包括三个阶段的操作:split-apply-combine。
分组运算的第一个阶段,pandas对象(无论是Series、DataFrame还是其他的)中的数据会根据你所提供的一个或多个键被拆分(split)为多组。拆分操作是在对象的特定轴上执行的。例如,DataFrame可以在其行(axis=0)或列(axis=1)上进行分组。然后,将一个函数应用(apply)到各个分组并产生一个新值。最后,所有这些函数的执行结果会被合并(combine)到最终的结果对象中。结果对象的形式一般取决于数据上所执行的操作。
groupby方法基本使用如下:
group_fare = df_result['Fare'].groupby(df_result['Sex']).mean()
该操作是利用df_result中的Sex进行分类,并在这些分类上完成对df_result中Fare的平均值的计算。
如果考虑同时完成多列的各种特征值的计算,可以考虑使用agg()函数来完成,其使用示例如下:
df_result.groupby('Sex').agg({'Fare': 'mean', 'Survived': 'sum'})
该操作是利用df_result中的Sex进行分类,并在该分类基础上完成对于df_result中Fare平均值的计算,同时完成对于df_result中Survived和的计算。