修改dataframe的六大方法

一句话总结:改索改名改顺序,改样改值改类型。


一:改索引

1.index改索引

代码如下(示例):

import pandas as pd
import numpy as np# 创建数据 --------------------------------------
dict = {'open':[1,2,3,4,5],'high':[6,7,8,9,10],'low':[11,12,13,14,15],'close':[16,17,18,19,20]
}
df = pd.DataFrame(dict)
# 改索引 -----------------------------------------
# 1. index改索引
df.index = ['a','b','c','d','e']  # []列表的长度必须与df行数一致。
# 输出结果对比:open  high  low  close
0     1     6   11     16
1     2     7   12     17
2     3     8   13     18
3     4     9   14     19
4     5    10   15     20open  high  low  close
a     1     6   11     16
b     2     7   12     17
c     3     8   13     18
d     4     9   14     19
e     5    10   15     20

2. 将某列改为索引

代码如下(示例):

# 改索引 --------------------------------------
# 2. 将某列改为索引df = df.set_index("close")  # 将"close"列设为索引(默认同时删除"close"列的数据)# df = df.set_index("close", drop = False)  #  drop=False 表示保留原先"close"列的数据。(默认为True)
# 输出结果对比:open  high  low  close
0     1     6   11     16
1     2     7   12     17
2     3     8   13     18
3     4     9   14     19
4     5    10   15     20open  high  low
close
16        1     6   11
17        2     7   12
18        3     8   13
19        4     9   14
20        5    10   15

二:改列名

1. columns 方法

代码如下(示例):

# 改列名 ------------------------------------------
# 1. columns 方法
df.columns = ('a','high','c','close')
# 输出结果对比:open  high  low  close
0     1     6   11     16
1     2     7   12     17
2     3     8   13     18
3     4     9   14     19
4     5    10   15     20a  high   c  close
0  1     6  11     16
1  2     7  12     17
2  3     8  13     18
3  4     9  14     19
4  5    10  15     20

2. rename 方法

代码如下(示例):

# 改列名 ------------------------------------------
# 2. rename 方法
df.rename(columns={'close':'D'},inplace=True)
# 输出结果:open  high  low  close
0     1     6   11     16
1     2     7   12     17
2     3     8   13     18
3     4     9   14     19
4     5    10   15     20open  high  low   D
0     1     6   11  16
1     2     7   12  17
2     3     8   13  18
3     4     9   14  19
4     5    10   15  20

三:改列的顺序

代码如下(示例):

# 改列的顺序 ---------------------------------------
# df = df[['low','close','high','open']]
# 输出结果对比:open  high  low  close
0     1     6   11     16
1     2     7   12     17
2     3     8   13     18
3     4     9   14     19
4     5    10   15     20low  close  high  open
0   11     16     6     1
1   12     17     7     2
2   13     18     8     3
3   14     19     9     4
4   15     20    10     5

四:改样式(略)

1. Styler.applymap:逐元素
2. Styler.apply:列/行/表方式


五:改值

1. 改具体某个值

# 1. 改具体某个值
df.iloc[2,2] = 5
# df.loc[2,'low'] = 5  # 两种方法效果一样
# 输出结果对比:open  high  low  close
0     1     6   11     16
1     2     7   12     17
2     3     8   13     18
3     4     9   14     19
4     5    10   15     20open  high  low  close
0     1     6   11     16
1     2     7   12     17
2     3     8    5     18
3     4     9   14     19
4     5    10   15     20

2.按条件改

# 按条件改:将'open'列中所有大于3的数修改成0
df['open'][df['open'] > 3] = 0
# 输出结果对比:open  high  low  close
0     1     6   11     16
1     2     7   12     17
2     3     8   13     18
3     4     9   14     19
4     5    10   15     20open  high  low  close
0     1     6   11     16
1     2     7   12     17
2     3     8   13     18
3     0     9   14     19
4     0    10   15     20

六:改类型

1. 修改某一列的数据类型
df[‘low’] = df[‘low’].astype(‘int64’) # 修改’low’列为 int类型

2. 修改多列的数据类型
df[[‘low’, ‘close’]] = df[[‘low’, ‘close’]].apply(pd.to_numeric)
#内置函数,to_numeric() 可以将一列转换为数值类型,自动判断是 int 还是 float


pandas速学系列四:修改dataframe的六大方法相关推荐

  1. pandas 批量修改列名_pandas修改DataFrame列名的方法

    在做数据挖掘的时候,想改一个DataFrame的column名称,所以就查了一下,总结如下: 数据如下: >>>import pandas as pd >>>a = ...

  2. Linux Rootkit 系列四:对于系统调用挂钩方法的补充

    本篇文章按照之前文章所说的,来介绍linux rootkit中的系统调用挂钩技术. 1.背景 本次环境依然是linux 2.6系列内核,ubuntu10.04. 本篇文章及上篇文章的示例代码:Gith ...

  3. linux mkdir 系统调用,Linux Rootkit 系列四:对于系统调用挂钩方法的补充

    免责声明:本文介绍的安全知识方法以及代码仅用于渗透测试及安全教学使用,禁止任何非法用途,后果自负 前言 我将会把系列文章继续写下去,由于本系列文章novice同学也在写,所以我俩的顺序可能有点乱,不过 ...

  4. Pyecharts一文速学-绘制桑基图详解+Python代码

    目录 前言 一.桑基图 二.Pyecharts绘制 1.数据处理 2.桑基图参数 1.class Sankey() 2.class SankeyLevelsOpts() 三.add()方法参数 1.s ...

  5. 【Python茴香豆系列】之 PANDAS 修改 DataFrame 列名

    [Python茴香豆系列]之 PANDAS 修改 DataFrame 列名 用 Python 编程,使用不同的方法来完成同一个目标,有时候是一件很有意思的事情.这让我想起鲁迅笔下的孔乙己.孔乙己对于茴 ...

  6. 一文速学数模-时序预测模型(四)二次指数平滑法和三次指数平滑法详解+Python代码实现

    目录 前言 二次指数平滑法(Holt's linear trend method) 1.定义 2.公式 二次指数平滑值: 二次指数平滑数学模型: 3.案例实现 三次指数平滑法(Holt-Winters ...

  7. Java私塾跟我学系列——JAVA篇 第四章Java类和对象

    教学目标: i面向对象基础 i掌握对象的三大特性 i掌握Java类的构建 i掌握如何使用Java类 i理解引用类型 i理解按值传递和按引用传递 i深入理解变量 i掌握包装类 i理解类型转换 i理解Ja ...

  8. pandas使用loc函数更新、修改dataframe指定数据行的内容(update or change the content of specific row of dataframe)

    pandas使用loc函数更新.修改dataframe指定数据行的内容(update or change the content of specific row of dataframe) 目录

  9. pandas 修改 DataFrame 列名

    本文参考自:pandas 修改 DataFrame 列名 原博客针对每个DataFrame.columns中的元素做相同的修改操作 而拙作是对每个元素做不同操作的生搬硬套, 请大家不吝赐教 提出问题 ...

最新文章

  1. python学成什么样可以找工作-Python 爬虫学到什么样就可以找工作了?
  2. java中为什么要封装_Java中为什么要为基本类型提供封装类呢?
  3. PHP webshell
  4. ubuntu使用CMake时报错compilation terminated找不到头文件解决方法
  5. 使用MHA对mysql主从架构中的主节点做高可用
  6. linux删除文件、文件夹操作
  7. 细胞自动机,那是什么?
  8. Vue2.0搭建脚手架(vue-cli)
  9. linux 耳机设备文件,linux耳机
  10. 乐筑携手大通,共筑全球绳网产业互联网领导者平台
  11. 无房产证明怎么办理?
  12. 2022数模国赛B题无人机第一题第一小问的简单编程
  13. 2.Echart----绘制饼图
  14. Mysql登录和修改初始化密码
  15. 对服务器整体性能画像,青云科技发布新一代企业级云服务器e3 绘制云基础设施标准画像...
  16. 测试从Mathon插件发表
  17. paddlepaddle 实现AlexNet模型,复现原创论文
  18. 飞桨领航团AI达人创造营课程笔记Lesson_2:数据集的获取与处理(CV方向)
  19. android 音乐 简书,Android音频开发(7):音乐可视化-FFT频谱图
  20. “互联网+”时代保险公司经营管理模式研究

热门文章

  1. [Python] strip()方法
  2. oracle 关系 表 视图_oracle主要的动态视图与基表的对应关系
  3. 基于FPGA的LCD1602显示屏驱动
  4. 杰理AC692X---简介(1)
  5. A股常用指数历史成分股数据Web API
  6. 网页三剑客,html/css/javascript
  7. Windows系统上 如何生成 .tar.gz格式的压缩包
  8. 【测试管理】测试进度汇总报告
  9. 学习机器人无从下手?带你体会当下机器人热门研究方向有哪些
  10. 机器人需要怎样的计算平台