赞
踩
pandas是Python的扩展库(第三方库),为Python编程语言提供 高性能、易于使用的数据结构和数据分析工具。
pandas官方文档:User Guide — pandas 2.2.2 documentation (pydata.org)
帮助:可使用help(...)查看函数说明文档(若是第三方库的函数,需先导入库)。例如:help(pd.DataFrame),help(pd.concat)
Python代码中,导入pandas:
import pandas as pd
(1-1)替换指定数据:replace
replace(self, to_replace=None, value=<no_default>, inplace: 'bool' = False, limit=None, regex: 'bool' = False, method: 'str | lib.NoDefault' = <no_default>)
注:默认inplace=False 不替换原DataFrame。
DataFrame.replace(np.nan, 新值):将NaN值都替换成新值。
DataFrame.replace(旧值, np.nan):将旧值都替换成NaN值。
注:np.nan需导入numpy(import numpy as np)。
(1-2)替换布尔为False的值:where
where(self, cond, other=<no_default>, inplace=False, axis=None, level=None, errors='raise', try_cast=<no_default>)
注:默认不满足条件(False)替换为NaN,inplace=False 不替换原DataFrame。
(1-3)替换布尔为True的值:mask
mask(self, cond, other=nan, inplace=False, axis=None, level=None, errors='raise', try_cast=<no_default>)
注:默认other=nan 满足条件(True)替换为NaN,inplace=False 不替换原DataFrame。
(2-1)添加列(最右侧):[ ]
(2-2)添加列(指定位置):insert
insert(self, loc: 'int', column: 'Hashable', value: 'Scalar | AnyArrayLike', allow_duplicates: 'bool' = False) -> 'None'
(2-3)添加行/列(在最后):loc
(2-4) 添加行/列(指定位置):concat
concat(objs: 'Iterable[NDFrame] | Mapping[Hashable, NDFrame]', axis: 'Axis' = 0, join: 'str' = 'outer', ignore_index: 'bool' = False, keys=None, levels=None, names=None, verify_integrity: 'bool' = False, sort: 'bool' = False, copy: 'bool' = True) -> 'DataFrame | Series'
注:默认join='outer' 外连接。
注意:
补充:两DataFrame合并,可参考:"合并"中的join, merge, append, concat。【Python】pandas:排序、重复值、缺省值处理、合并、分组-CSDN博客
(3-1)删除列:pop
pop(self, item: 'Hashable') -> 'Series'
(3-2)删除行/列(指定标签):drop
drop(self, labels=None, axis: 'Axis' = 0, index=None, columns=None, level: 'Level | None' = None, inplace: 'bool' = False, errors: 'str' = 'raise')
注:默认inplace=False 不替换原DataFrame。
drop也可用于删除多索引中的行/列。
(3-3)删除行/列(指定位置):concat
若有重复列名的DataFrame,删除指定行/列,需用iloc通过列索引位置切割,再用concat拼接。简单的,使用iloc就可以获得。
(4-1)不带聚合的数据透视:pivot
pivot(self, index=None, columns=None, values=None) -> 'DataFrame'
若作为行索引和列索引的条目有重复的,则会报错:ValueError: Index contains duplicate entries, cannot reshape。
(4-2)数据透视表:pivot_table
pivot_table(self, values=None, index=None, columns=None, aggfunc='mean', fill_value=None, margins=False, dropna=True, margins_name='All', observed=False, sort=True) -> 'DataFrame'
注:默认dropna=True 若整行都是NaN则删除。
(4-3)取消透视:melt
melt(self, id_vars=None, value_vars=None, var_name=None, value_name='value', col_level: 'Level | None' = None, ignore_index: 'bool' = True) -> 'DataFrame'
多索引使用melt,指定level行的列名不能相同。
可以使用元组形式表示具体列。
(4-4)将列索引转为行索引:stack
stack(self, level: 'Level' = -1, dropna: 'bool' = True)
注:默认level= -1 将最后一行列索引转为行索引,dropna=True 若整行都是NaN则删除。
(4-5)将行索引转为列索引:unstack
unstack(self, level: 'Level' = -1, fill_value=None)
注:默认level= -1 将最后一列行索引转为列索引。
(4-6)行轴、列轴交换:(行列转置)
pandas 各函数官方文档:General functions — pandas 2.2.2 documentation (pydata.org)
DataFrame 各方法官方文档:DataFrame — pandas 2.2.2 documentation (pydata.org)
Series 各方法官方文档:Series — pandas 2.2.2 documentation (pydata.org)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。