数据分析基础之《pandas(3)—DataFrame运算》

一、算术运算

1、add()
加法运算

2、sub()
减法运算

3、想要得到每天的涨跌幅大小,求出每天close-open价格差

# 算术运算
close = data['close']
open1 = data['open']
# 收盘价减去开盘价
data['m_price_change'] = close.sub(open1)
data.head()

二、逻辑运算

1、逻辑运算符号<、>、|、&

# 逻辑运算

# 筛选p_change > 2的日期数据
data['p_change'] > 2

# 筛选满足p_change > 2的所有的数据
data[data['p_change'] > 2]

# 完成一个多个逻辑判断,筛选p_change > 2并且low > 15
data[(data['p_change'] > 2) & (data['low'] > 15)]

2、逻辑运算函数
(1)query(expr)
    说明:
    expr:查询字符串

(2)isin(values)
    说明:
    指定值进行判断

# query使得上面的筛选更加方便,填字符串就可以了
data.query("p_change > 2 & low > 15")

# 判断turnover是否为4.19、2.39
data[data['turnover'].isin([4.19, 2.39])]

三、统计运算

1、describe()
计算平均值、标准差、最大值、最小值。。。
count:有多少个数量
mean:平均值
std:标准差
min:最小值
max:最大值
25%、50%、75%:分位数

2、统计函数
和numpy中的统计函数类似
sum():求和
mean():求平均值
median():中位数
min():最小值
max():最大值
mode():求众数,就是数据集中出现次数最多的数值
abs():求绝对值
prod():计算数据集中所有元素的积
std():求标准差
var():求方差
idxmax():沿列轴查找最大值的索引
idxmin():沿列轴查找最小值的索引

3、累计统计函数
cumsum:计算前1/2/3/.../n个数的和
cummax:计算前1/2/3/.../n个数的最大值
cummin:计算前1/2/3/.../n个数的最小值
cumprod:计算前1/2/3/.../n个数的积

# 统计运算

data.describe()

data.idxmax()

# 累计统计函数
# 直接用pandas画图
data['p_change'].sort_index().cumsum().plot()

四、自定义运算

1、apply(func, axis=0)
说明:
func:自定义函数
axis=0:默认是列,axis=1为行

2、定义一个对列求最大值减最小值的函数
在python中有两种函数,一种是def定义的函数,另一种是lambda函数,也就是大家常说的匿名函数(表达式)

# 自定义运算
data[['open','close']].apply(lambda x: x.max() - x.min(), axis=0)

相关推荐

  1. Pandas 数据结构 - DataFrame

    2024-02-02 07:00:05       19 阅读
  2. Python 数据分析模块pandas 如何创建DataFrame

    2024-02-02 07:00:05       18 阅读
  3. 数据分析基础pandas(6)—高级处理》

    2024-02-02 07:00:05       31 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-02 07:00:05       17 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-02 07:00:05       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-02 07:00:05       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-02 07:00:05       18 阅读

热门阅读

  1. 私有化部署dos游戏

    2024-02-02 07:00:05       27 阅读
  2. Node.js REPL详解

    2024-02-02 07:00:05       36 阅读
  3. git 凭据缓存不可用;没有 unix 套接字支持”警告

    2024-02-02 07:00:05       28 阅读
  4. 【lesson33】MySQL使用C/C++连接

    2024-02-02 07:00:05       27 阅读
  5. 第2章 Linux 中执行命令

    2024-02-02 07:00:05       28 阅读
  6. iOS自动打包如何用Python实现

    2024-02-02 07:00:05       26 阅读
  7. Leetcode 《面试经典150题》169. 多数元素

    2024-02-02 07:00:05       28 阅读