一、append与assign
append方法
1.利用序列添加行(必须指定name)
2.用DataFrame添加表
assign方法
该方法主要用于添加列,列名直接由参数指定
二、combine与update
comine方法
comine和update都是用于表的填充函数,可以根据某种规则填充
combine方法是按照表的顺序轮流进行逐列循环的,而且自动索引对齐,缺失值为NaN
update方法
三个特点
1.返回的框索引只会与被调用框的一致(默认使用左连接,下一节会介绍)¶
2.第二个框中的nan元素不会起作用
3.没有返回值,直接在df上操作
三、concat方法
concat方法可以在两个维度上拼接,默认纵向凭借(axis=0),拼接方式默认外连接
所谓外连接,就是取拼接方向的并集,而’inner’时取拼接方向(若使用默认的纵向拼接,则为列的交集)的交集
pd.concat(objs, axis=0, join='outer', ignore_index=False, keys=None,
levels=None, names=None, verify_integrity=False, copy=True)
参数:
objs:需要连接的对象
axis:连接的轴向,默认为0
join:按交集(inner)或者并集(outer)进行合并
ignore_index:默认为false,如果为true,则不使用轴上的索引
keys:使用传递的键作为最外层来构造层次索引
level:用于构造多索引的特定级别(惟一值)
names:结果层次索引中级别的名称。
verify_integrity:检查新连接的轴是否包含重复项
四、merge与join
merge函数
merge函数的作用是将两个pandas对象横向合并,遇到重复的索引项时会使用笛卡尔积,默认inner连接,可选left、outer、right连接
所谓左连接,就是指以第一个表索引为基准,右边的表中如果不再左边的则不加入,如果在左边的就以笛卡尔积的方式加入
merge/join与concat的不同之处在于on参数,可以指定某一个对象为key来进行连接
pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None,
left_index=False, right_index=False, sort=True,
suffixes=('_x', '_y'), copy=True, indicator=False,
validate=None)
参数:
how:合并方式,‘left’, ‘right’, ‘outer’, ‘inner’
on:要连接的列或索引级名称
join函数
join函数作用是将多个pandas对象横向拼接,遇到重复的索引项时会使用笛卡尔积,默认左连接,可选inner、outer、right连接
left.join(right, on=key_or_keys)