【数据挖掘】Pandas基本数据操作

🔥 本文由 程序喵正在路上 原创,CSDN首发!
💖 系列专栏:Python数据挖掘
🌠 首发时间:2022年9月13日
🦋 欢迎关注🖱点赞👍收藏🌟留言🐾
🌟 一以贯之的努力 不得懈怠的人生

学习目标

  • 记忆 DataFrame 的形状、行列索引名称获取等基本属性
  • 应用 SeriesDataFrame 的索引进行切片获取
  • 应用 sort_indexsort_values 实现索引和值的排序

环境准备

为了更好地理解这些基本操作,我们将读取一个真实的股票数据,关于文件操作这部分的内容,最后会介绍,这里先用一下相关的 API

先下载这个等会需要用到的 csv 文件,点击此处进入,将其放到桌面

import pandas as pd

# 读取文件
data = pd.read_csv("./Desktop/stock_day/stock_day.csv")

# 删除一些列,让数据更简单些,再去做后面的操作
data = data.drop(["ma5", "ma10", "ma20", "v_ma5", "v_ma10", "v_ma20"], axis=1)

在这里插入图片描述

索引操作

Numpy 当中我们已经学过使用索引去选取序列和切片选择,pandas 也支持类似的操作,也可以直接使用列名、行名称,甚至组合使用

直接使用行列索引(先列后行)

获取 ‘2018-02-27’ 这天的 ‘close’ 的结果

# 直接使用行列索引名字的方式(先列后行)
data['close']['2018-02-27']

在这里插入图片描述

# 不支持的操作,都会报错
data['2018-02-27']['close']

data[:1, :2]

结合loc或者iloc使用索引

获取从 ‘2018-02-27’ :‘2018-02-22’,‘open’ 的结果

# 使用loc:只能指定行列索引的名字
data.loc['2018-02-27':'2018-02-22', 'open']

在这里插入图片描述

# loc可以先行后列
data.loc['2018-02-27']['open']

在这里插入图片描述

# 按数字索引
data.iloc[1, 0]

在这里插入图片描述

# 使用iloc可以通过索引的下标去获取
# 获取前100天数据的 ‘open’ 列的结果
data.iloc[0:100, 0:2].head()

在这里插入图片描述

使用组合索引

获取行第 1 天到第 4 天,[‘open’, ‘close’, ‘high’, ‘low’] 这四个指标的结果

# 推荐使用loc和iloc来获取的方式
data.loc[data.index[0:4], ['open', 'close', 'high', 'low']]
data.iloc[0:4, data.columns.get_indexer(['open', 'close', 'high', 'low'])]

在这里插入图片描述

赋值操作

赋值操作比较简单,下面是对 DataFrame 中的 close 列进行重新赋值为 1

# 直接修改原来的值
data['close'] = 1

# 或者
data.close = 1

排序

排序有两种形式,一种对内容进行排序,一种对索引进行排序

DataFrame

使用 df.sort_values(key=, ascending=) 对内容进行排序

  • 单个键或者多个键进行排序,默认升序
  • ascending=False; 降序
  • ascending=True; 升序
# 按照涨跌幅大小进行排序,使用ascending按照指定大小排序
data = data.sort_values(by='p_change', ascending=False).head()
data

在这里插入图片描述

# 按照多个键进行排序
data = data.sort_values(by=['open', 'high'])
data

在这里插入图片描述

使用 df.sort_index 对索引进行排序

  • 这个股票的日期索引原来是从大到小,现在重新排序,从小到大

在这里插入图片描述

Series

使用 series.sort_values(ascending=False) 对内容进行排序

  • series 排序时,只有一列,不需要参数
sr = data['price_change']
sr.sort_values(ascending=False)

在这里插入图片描述

使用 series.sort_index 对索引进行排序

  • df 一致
# 对索引进行操作
data['p_change'].sort_index()

在这里插入图片描述

Pandas 的基本数据操作到这里就完了,你学会了吗

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序喵正在路上

你的鼓励是我创作最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值