目录
3.2.2 merge示例:歌曲类型数据和歌曲数据进行merge
3.2.3 merge示例:to_timedelta和floor函数的使用
4.2.1 stock_2016和stock_2017按照行标签进行关联,设置为outer连接
1. 数据组合简介
在进行数据分析工作之前,需要进行数据清理工作,数据清理有一下目标:
- 每个观测值成一行
- 每个变量成一行
- 每种观测单元构成一个表格
数据整理好后,可能需要多张表格组合在一起才能进行某些问题的分析
单个表也可以被分割成多个,比如时间序列数据,每个日期可能在一个单独的文件中
2.concat拼接数据
2.1 方法
基本格式:
方法 | 说明 |
pd.concat([df1,df1,...]) | 多个数据集之间按行标签索引或者列标签索引拼接,join属性值默认是outer,也可以设置为inner,如果是按照行标签索引对其即进行列拼接加上axis=1(对列相关的数据进行操作都是axis=1) |
outer:对于无法对齐的列,默认为nan
inner:对于无法对其的列,默认不显示出来
2.2 行拼接:按照列标签索引对齐
注意:因为默认是outer,所以对于行拼接时无法对齐的列,默认填充NAN
其中可以使用ignore_index=True属性,使concat函数忽略行标签索引,使索引重新生成
注意:1.3节有讲到在append函数中添加该属性,目的是忽略行标签按索引,直接在后面添加数据
两次使用意思差不多
# 将 df1、df2和 df3 按照列标签对齐,进行行拼接¶
pd.concat([df1,df2,df3])
# concat 拼接数据时忽略原有数据的行标签
pd.concat([df1,df2,df3],ignore_index=True)
2.3 列拼接:按照行标签索引对齐
注意:因为默认是outer,所以对于列拼接时无法对齐的列,默认填充NAN
#df1 和 new_series 按照行标签对齐,进行列拼接
pd.concat([df1,new_series],axis=1)
2.4 join参数的设置
concat的join参数:
join参数的属性值就是前文提到的outer和inner