pandas数据变形 添加行和列、merge、get_dummies、sample

添加行和列

  • 使用[]和loc添加行
    pandas数据变形 添加行和列、merge、get_dummies、sample_第1张图片

  • 使用assign方法
    pandas数据变形 添加行和列、merge、get_dummies、sample_第2张图片

  • 使用loc可以对行进行添加
    pandas数据变形 添加行和列、merge、get_dummies、sample_第3张图片

  • append 拼接多个列表
    pandas数据变形 添加行和列、merge、get_dummies、sample_第4张图片

删除行和列

DataFrame.drop(labels,axis,index,columns,inplace)

pandas数据变形 添加行和列、merge、get_dummies、sample_第5张图片

数据连接和合并

pandas.concat(objs,axis,join='outer',ignore_index=False

使用某种合并方式(inner/outer)
沿着某个轴向(axis=0/1)
把多个Pandas对象(DataFrame/Series)合并成一个。
pandas数据变形 添加行和列、merge、get_dummies、sample_第6张图片

merge 函数

pandas.merge(
    left,
    right,
    how="inner",
    on=None,
    left_on=None,
    right_on=None,
    left_index=False,
    right_index=False,
    sort=False,
    suffixes=("_x", "_y"),
    copy=True,
    indicator=False,
    validate=None,
)

参数 说明
left 左表
right 右表
how 连接方式,inner、left、right、outer,默认为inner
on 用于连接的列名称
left_on 左表用于连接的列名
right_on 右表用于连接的列名
left_index 是否使用左表的行索引作为连接键,默认False
right_index 是否使用右表的行索引作为连接键,默认False
sort 默认为False,将合并的数据进行排序
copy 默认为True,总是将数据复制到数据结构中,设置为False可以提高性能
suffixes 存在相同列名时在列名后面添加的后缀,默认为(’_x’, ‘_y’)
indicator 显示合并数据中数据来自哪个表
  • inner
    merge的’inner’的类型称为内连接,它在拼接的过程中会取两张表的键(key)的交集进行拼接。
    pandas数据变形 添加行和列、merge、get_dummies、sample_第7张图片
    现在用’inner’的方式进行merge
    pandas数据变形 添加行和列、merge、get_dummies、sample_第8张图片
    图文表示为
    pandas数据变形 添加行和列、merge、get_dummies、sample_第9张图片
  • left 和right
    'left’和’right’的merge方式其实是类似的,分别被称为左连接和右连接。这两种方法是可以互相转换的,所以在这里放在一起介绍。

‘left’
merge时,以左边表格的键为基准进行配对,如果左边表格中的键在右边不存在,则用缺失值NaN填充。

‘right’
merge时,以右边表格的键为基准进行配对,如果右边表格中的键在左边不存在,则用缺失值NaN填充。
pandas数据变形 添加行和列、merge、get_dummies、sample_第10张图片
现在用’left’的方式进行merge
pandas数据变形 添加行和列、merge、get_dummies、sample_第11张图片

pandas数据变形 添加行和列、merge、get_dummies、sample_第12张图片

  • outer
    'outer’是外连接,在拼接的过程中它会取两张表的键(key)的并集进行拼接。看文字不够直观,
    pandas数据变形 添加行和列、merge、get_dummies、sample_第13张图片
    pandas数据变形 添加行和列、merge、get_dummies、sample_第14张图片

随机抽样

DataFrame.sample(n,frac,replace,axis,ignore_index,random_state)

n表示从数据集中随机选取n行数据,不能和frac参数同时使用。如果frac=None,那么n默认为1.
frac表示从数据集中选取一定比例的数据,不能和n同时使用。如果frac>1,replace必须为True
replace表示是否允许重复取样,即一条数据多次选取。默认为否

pandas数据变形 添加行和列、merge、get_dummies、sample_第15张图片

ge_dummies

pandas.get_dummies(data, prefix=None, prefix_sep='_', dummy_na=False, columns=None, sparse=False, drop_first=False, dtype=None)

data : array-like, Series, or DataFrame 输入的数据
prefix : string, list of strings, or dict of strings, default None。get_dummies转换后,列名的前缀
columns : list-like, default None。指定需要实现类别转换的列名
dummy_na : bool, default False,增加一列表示空缺值,如果False就忽略空缺值
drop_first : bool, default False,获得k中的k-1个类别值,去除第一个。

pandas数据变形 添加行和列、merge、get_dummies、sample_第16张图片

你可能感兴趣的:(数据分析,pandas,python,数据分析)