| concat(上下拼接) | 用于堆叠,多表合并 | 用的时候要对表的字段进行检查,避免出现重复或者差异,否则会产生新的字段; 如果什么都没有则非常方便,主要是在数据清洗上边 |
|---|---|---|
| join |
和sql里差不多,主要用于索引
| 如果是一个固定的索引列,比如时间序列,日期等,可以考虑join | | merge(左右拼接) |
根据键值 | |
1、merge:针对具体的某个列- position.merge(right=company,how='inner',on='companyId')- 同名会去重,不同名则会保留,比如:left on = companyId,right on = id- pd.merge()和position.merge()会有一点小差异,前边比后边多出来一个leftposition.merge(right=company,how='inner',on='companyId')改字段名称:- rename可以把行标签和列标签都改掉- 只单独改一个的话:col = list[company.columns]col[0] = idcompany.columns = col2、join:dataframe内置的join方法是一种快速合并的方法。它默认以index作为对齐的列列名相同,内容也有相同company.join(position,lsuffix='_1',rsuffix='_2')3、concat:相当于sql里union- 默认上下:axis=0,左右:axis=1- 上下拼接:pd.concat([company,position])# 上下拼接如果要生成新索引,忽略原来索引怎么办?默认有个参数ignore_index= False,将其值改为True- 左右拼接:pd.concat([company,position],axis=1)什么时候用concat?比如每个月都有销售明细,每个月一个表,表的字段基本相同,最后用的时候,可以使用concat把十几张表拼接在一起
