数据分析pandas 常用函数手册

pandas 函数

最近在对股票数据进行清洗和计算的过程中,遇到了不少对这个库函数的使用,所以做了个函数使用总结。

轴的理解

pandas 很多函数会指定轴,要正确理解轴的含义,才容易明白函数意义

ax0 选中列,对行进行函数应用 ax1 选中行,对列进函数应用

我的理解是先看选中了啥,然后应用操作,例如默认的都是 ax0 ,代表选中了列,多行进行运算操作。

常用函数手册

信息

函数说明
df.shape输出dataframe有多少行,多少列
df.shape[0]输出行数量,1 输出列数量
df.colums输出列的名字
df.index输出行的名字
df.dtpyes输出列的类型名
df.head(n)输出df前n行
df.tail(n)输出df后n行
df.sample(n=3)随机抽取几行
df.describe()对数字进行一个简单直观统计

行操作

函数说明
loc['index名']索引某行,返回Series
loc['index名n':'index名m']索引多行,返回DataFrame
loc[:,'date':'code']索引所有行,列为date,code ,返回DataFrame
at[index,'code']访问某个元素,loc也可以,但更为高效
iloc[n]以序号选取某一行,返回Series
iloc[n:m]序号多行选择,返回DataFrame
iloc[:,n:m]第一个:选择所有,逗号后面的是多列选择,
返回DataFrame
iloc[:,:]读取所有行和列,返回DataFrame
iat[1,1]读取指定的某个元素,
使用iloc也可以,但这个更高效

列操作

函数说明
df['股票名']+'_地产'原有字符上添加新字符
df['收盘价']*df['成交量']多列操作运算,eg:结果是成交额
df['新列名']=df['股票名']+'_地产'新增一列

统计函数

函数说明
df['收盘价'].mean()一列求均值,返回一个数
df[['收盘价','最高价']].mean()多列求均值,返回多个数
df[['收盘价','最高价']].mean(axis=1)选择行,操作多列,返回所有行对应的均值
默认axis=0,选中列,操作多行
df['收盘价'].max()原理同上,返回最大值
df['收盘价'].min()原理同上,返回最小值
df['收盘价'].std()原理同上,返回标准差
df['收盘价'].count()原理同上,返回非空数值数量
df['收盘价'].median()原理同上,返回中位数
df['收盘价'].quantile(0.5)原理同上,返回50%分位数

很有用的函数

函数说明
shif()偏移函数,大于0 下偏移
diff()偏移差值函数
pct_change()偏移差值比例函数,相当于涨跌幅
rank(ascending=True,
pct=False)
排序函数,ascending代表顺序排序
还是逆序排序,pct是否百分比排序(0-1.0)
value_counts()统计该列中每个元素出现的个数,
返回数据Series
df['收盘价_3天均值']=df['收盘价'].rolling(3).mean()rolling函数,取最近的n行,
其实就是一个滑动窗口
df['收盘价_至今均值']=df['收盘价'].expanding().mean()expanding函数,从开始到当前行

筛选

函数说明
df[df['code'] = '000001']返回符合筛选条件的行,
多个条件用 & 等逻辑符链接

缺省值

函数说明
dropna(how='any')删除带有空值的行,
how='any'意味着,只要有一个空值就删除
how='all'要全是空值才删除
dropna(subset=['code','name'],how='any')选中对应的列符合空值删除行
fillna(value='我叫补全')缺失值补全为固定值
df['某列'].fillna(value=df['收盘价'],inplace=True)某列空值以某列数值补全
fillna(method='ffill')向上寻找非空值补全
fillna(method='bfill')向下寻找非空值补全
fillna(method='bfill')向下寻找非空值补全
notnull()非空值判断
isnull()空值判断
df[df['某列'].notnull()]以某列不为空作为条件,行输出

排序函数

函数说明
reset_index(inplace=True)索引恢复为默认
sort_values(by=['date'],ascending=1)by参数指定按照什么进行排序,
ascending指定顺序还是逆序
sort_values(by=['code','date'],ascending=[1,1])多列进行排序,eg code 相等的放前面,
再按date进行排序

合并函数

函数说明
df1.append(df2,ignore_index=True)拼接函数,ignore_index 是否忽略index名,
True重新给index, eg 上下拼接

去重

函数说明
drop_duplicates(subset=['股票代码','交易日期'],
keep= 'first')
inplace=True
subset 参数指定用那几列作为去重的依据,
若不指定则以全部列的数据做为判断,
keep 参数是指去重时保持上面一行
还是下面一行

其他重要的函数

函数说明
df.rename(colums={'MACD_金叉':'金叉'})可以字典形式对列名进行重命名
df.empty是否为空
df.T数据转置,行列互换

字符串处理

函数说明
df['股票代码'].str[:2]对股票代码列的字符串去前两字符
df['股票代码'].str.upper()对股票代码列的字符串转为大写
df['股票代码'].str.lower()对股票代码列的字符串转为小写
df['股票代码'].str.len()对股票代码列的字符串进行计算
df['股票代码'].str.strip()对股票代码列的字符串进行空格去掉
df['股票代码'].str.contains('sz')该列是否包含该字符
df['股票代码'].str.replace('sz','sh')该列字符进行替换
df['股票代码'].str.split('; ')对字符串进行分割
df['股票代码'].str.split('; ').str[:2]对字符串进行分割后,取第一位置

时间处理

函数说明
df['交易日期']=pd.to_datetime(df['交易日期'])将交易日期由字符串转成日期
df['交易日期']通过交易日期进行访问
df['交易日期'].dt.year输出日期的年份
df['交易日期'].dt.month输出日期的月份,其他雷同week
df['交易日期']+pd.Timedelta(days=1)用于表示时间差数据

官方文档

上面都是一些很常用的函数,官方文档才是最全的,数据清洗统计过程中常常去这里查吧。

官方使用手册

https://pandas.pydata.org/pandas-docs/stable/user_guide/10min.html#operations

总结于 2022 年 11 月 20 日 16:27:55

本文由 mdnice 多平台发布

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Pandas离线参考手册是关于Pandas库的一本详细且全面的文档,旨在为用户提供快速查找和详细理解Pandas的功能和用法的工具。 首先,Pandas是一个基于NumPy库构建的开源数据分析库,提供高性能,易于使用的数据结构和数据分析工具。它是Python数据科学生态系统中最常用的库之一,被广泛用于数据处理、数据清洗、数据分析、数据可视化和机器学习等领域。 Pandas离线参考手册的好处是提供了离线访问Pandas文档的便利。相比于在线文档,离线参考手册允许用户在没有网络连接的情况下随时查找和浏览文档内容。这对那些在工作或学习中需要频繁使用Pandas的用户来说是非常方便的。 手册内容包括了Pandas库的所有主要功能和模块,如Series、DataFrame、数据选择和操作、数据清洗和处理、分组和聚合、数据合并和重塑、时间序列分析等。每个功能都有详细的说明和示例代码,帮助用户理解和应用。 此外,手册还提供了Pandas的API文档和函数索引,方便用户快速查找特定函数的用法和参数信息。无论是初学者还是有经验的用户,都可以从中获得帮助和指导。 总结来说,Pandas离线参考手册是一本非常有用的工具,它帮助用户深入理解和灵活应用Pandas库的各个功能。无论是新手还是老手,有了这个手册,用户可以更加高效地使用Pandas进行数据分析和处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值