当前位置: 首页 > article >正文

数据分析基础之《pandas(2)—基本数据操作》

一、读取一个真实的股票数据

1、读取数据

# 基本数据操作
data = pd.read_csv("./stock_day.csv")

data

# 删除一些列,使数据简洁点
data = data.drop(['ma5','ma10','ma20','v_ma5','v_ma10','v_ma20'], axis=1)

data

二、索引操作

1、numpy当中我们已经讲过使用索引选取序列和切片选择,pandas也支持类似操作

2、直接使用行列索引(先列后行)
因为dataframe带了行列索引,所以可以直接用它的,要注意先列后行

data['open']['2018-02-26']

3、按名字索引
结合loc函数使用,通过行标签索引行数据,可以多行,可以[行标签, 列标签]

data.loc['2018-02-26','open']

4、按数字索引
结合iloc函数使用,通过行号索引行数据

data.iloc[1, 0]

5、组合索引
结合ix函数使用,注意ix函数在0.20.0版本已经废弃
获取行第1天到第4天,['open','close','high','low']这四个指标的结果
data.ix[0:4, ['open','close','high','low']]

组合索引目前已经整合到iloc里,直接用iloc进行组合索引

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

data.iloc[0:4, data.columns.get_indexer(['open','close','high','low'])]

三、赋值操作

1、修改一整列
data.open = 100

2、赋值某一个字段
用上面索引方法找到这一个值,然后赋值
# 修改第2行第1列
data.iloc[1, 0] = 222

四、排序

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

2、DataFrame
sort_values(by=, ascending=)
对内容进行排序
说明:
(1)by:单个键或者多个键进行排序,默认升序
(2)ascending=False,降序
(3)ascending=True,升序

# 按照涨跌幅大小进行排序,使用ascending指定
data.sort_values(by='p_change', ascending=False)

# 按多个字段进行排序
data.sort_values(by=['high','p_change'], ascending=False)

sort_index()
对索引进行排序

# 对索引进行排序
data.sort_index()

3、Series
sort_values(ascending=)
对内容进行排序

sort_index()
对索引进行排序

# Series排序
sr = data['price_change']

sr

sr.sort_values(ascending=False)

sr.sort_index()


http://www.kler.cn/a/227454.html

相关文章:

  • Vue 上门取件时间组件
  • 关于实施数据治理,企业需要做哪些?
  • 070:vue中provide、inject的使用方法(图文示例)
  • vue3快速入门
  • 本地部署whisper模型(语音转文字)
  • 机器学习算法之决策树(DT)
  • 物流平台架构设计与实践
  • 爬虫学习笔记-scrapy安装及第一个项目创建问题及解决措施
  • Leetcode92:反转链表II(区间反转链表)
  • Facebook的社交影响力:用户行为解析与趋势
  • OJ刷题:《剑指offer》之单身狗1、2 !(巧用位操作符,超详细讲解!)
  • 深入Spring MVC的工作流程
  • 如何彻底卸载MySQL【可以解决问题】
  • idea创建spring项目
  • 适合大学英语搜题的软件?如何选择一款好用的大学搜题工具? #职场发展#微信#学习方法
  • 服务器使用过程中遇到常见故障及解决方案(包括蓝屏死机、无法删除的文件如何清理、网络卡、服务器连接不上等)
  • 算法逆向分析之-RC4
  • 4.0 HDFS 配置与使用
  • unity3d的海盗王白银城演示
  • MySQL十部曲之七:InnoDB索引及其优化措施