pandas DataFrame的增删查改总结系列文章:

对于DataFrame的修改操作其实有很多,不单单是某个部分的值的修改,还有一些索引的修改、列名的修改,类型修改等等。我们仅选取部分进行介绍。

一、值的修改

DataFrame的修改方法,其实前面介绍loc方法的时候介绍了一些。

1、 loc方法修改

loc方法实际上是定位某个位置的数据的,但是定位完以后就可以对此位置的数据进行修改,使用此方法可以对DataFrame进行的修改如下:

对某行、某N行进行修改;

对某列、某N列进行修改;

对横坐标为某行或某N行,纵坐标为某列或者某N列的数据进行修改;

可以看出基本用loc方法我们对DataFrame可以进行任意修改了。

1.1 对某行、某N行进行修改

# 对第1行进行修改

test_dict_df.loc[1:1,('english','id','math','name')]=[90,2,100,'Alice_m']

# 对第0行到第1行进行修改

test_dict_df.loc[0:1,('english','id','math','name')]=[[90,1,100,'Alice_m'],[70,2,100,'Bob']]

# 对第0行和第2行进行修改

test_dict_df.loc[0:3:2,('english','id','math','name')]=[[90,1,100,'Alice_m'],[70,2,100,'Bob']]

可以看出具体的方法就是用loc方法,对某行或者某N行进行定位,然后赋予合适的格式的值就可以了。

1.2 对某列、某N列进行修改

学会了使用loc方法对行的修改,那触类旁通,对列的修改也很简单了。对列修改也就是修改此列的所有行。

# 对第english列进行修改

test_dict_df.loc[:,('english')]=[90,80,70,90,90,59] #test_dict_df.loc[:,'english']=[90,80,70,90,90,59]

# 对第english列和id列进行修改,注意赋值的写法

test_dict_df.loc[:,('english','id')]=[[90,1],[80,2],[80,2],[80,2],[80,2],[80,2]]

1.3 对某个区域的值进行修改

# 对第1、2行的english列和 id列进行修改

test_dict_df.loc[1:2,('english','id')]=[[38,2],[23,2]]

1.4总结

可以看到loc方法就是,只要你能选到某个或者某个区域的值,然后就可以对此部分的值进行修改。但是要注意赋值部分的组织方式。

2、 iloc、at、iat方法修改

类比于上面的方式,其实只要能选择,都是可以修改的。选择方法可以看pandas DataFrame的查询(选择)篇。

二、列名的修改

1、直接全部更改

这种方法是对DataFrame的列名进行重新赋值,比较暴力直接。

test_dict_df.columns=['english_new','id_new','math_new','name_new']

2、使用rename方法

这种方法是比较推荐的,通过rename方法,注意参数inplace=True的时候,才能真正的在原来的DataFrame上进行修改。

test_dict_df.rename(columns={'english_new':'english'},inplace=True)

三、索引的修改

1、修改索引名称

上面的rename方法,如果不写columns=xx就默认修改索引了 。

test_dict_df.rename({0:'english1'},inplace=True)

2、重置索引

通过reset_index()方法我们可以重置索引,drop参数为True时,直接丢弃原来的索引,否则原来的索引新生成一列名为'index'的列:

test_dict_df.reset_index(inplace=True,drop=True)

2、设置其他列为索引

当然我们也可以用其他列为索引,通过set_index()方法:

test_dict_df.set_index('id_new')

四、总结

可以看到,所谓的修改首先要能选择修改的位置,即定位,然后对确定好的位置进行重新赋值,所以我们学会了如何选择数据,也就基本能修改此处的数据。

python dataframe修改_pandas DataFrame的修改方法相关推荐

  1. python iloc用法_pandas.DataFrame.loc和.iloc用法详解

    .loc[ ]与.iloc[ ]用法详解 目录 pandas.DataFrame.loc    pandas.DataFrame.iloc 注意 通过.loc[ ]或者.iloc[ ]获取数据时需要注 ...

  2. python dataframe索引_pandas DataFrame 行列索引及值的获取的方法

    pandas DataFrame是二维的,所以,它既有列索引,又有行索引 上一篇里只介绍了列索引: import pandas as pd df = pd.DataFrame({'A': [0, 1, ...

  3. python replace函数_Pandas DataFrame.replace()用法

    本文概述 Pandas replace()是一个非常丰富的函数, 用于从DataFrame替换字符串, 正则表达式, 字典, 列表和序列. DataFrame的值可以动态替换为其他值.它能够使用Pyt ...

  4. python空值填充_pandas | DataFrame基础运算以及空值填充

    今天是pandas数据处理专题的第四篇文章,我们一起来聊聊DataFrame的基本运算. 上一篇文章当中我们介绍了DataFrame数据结构当中一些常用的索引的使用方法,比如iloc.loc以及逻辑索 ...

  5. python cut函数_Pandas DataFrame.cut()用法例子

    本文概述 当需要将数据值分段并将其分类到bin中时, 将调用cut()方法.它用于将连续变量转换为分类变量.它还可以将元素数组分离到单独的容器中.该方法仅适用于一维数组状对象. 如果我们有大量标量数据 ...

  6. python pandas数据清洗_Pandas进行数据清洗的方法介绍

    Pandas进行数据清洗的方法介绍,数据清洗是一项复杂且繁琐的工作,同时也是整个数据分析过程中最为重要的环节.Pandas中常见的数据清洗操作有空值和缺失值的处理.重复值的处理.异常值的处理.统一数据 ...

  7. python agg函数_pandas agg函数使用方法

    DataFrame.agg(func,axis = 0,* args,** kwargs) func : 函数,函数名称,函数列表,字典{'行名/列名','函数名'} 使用指定轴上的一个或多个操作进行 ...

  8. pythonpandas设置索引_pandas DataFrame的修改方法(值、列、索引)

    对于DataFrame的修改操作其实有很多,不单单是某个部分的值的修改,还有一些索引的修改.列名的修改,类型修改等等.我们仅选取部分进行介绍. 一.值的修改 DataFrame的修改方法,其实前面介绍 ...

  9. python数据框新建一个列并赋值_pandas.DataFrame 根据条件新建列并赋值的方法

    pandas.DataFrame 根据条件新建列并赋值的方法 实例如下所示: import numpy as np import pandas as pd data = {'city': ['Beij ...

  10. python dataframe创建指定大小_pandas DataFrame创建方法的方式

    在pandas里,DataFrame是最经常用的数据结构,这里总结生成和添加数据的方法: ①.把其他格式的数据整理到DataFrame中: ②在已有的DataFrame中插入N列或者N行. 1. 字典 ...

最新文章

  1. [numpy]random.choice()随机选取内容
  2. VTK:迭代最近点变换用法实战
  3. SAP Fiori Elements 在本地测试模式下如何修改 List Report 里字段标签和图标
  4. java 成员变量的初始化_Java类变量和成员变量初始化过程
  5. 实现klib_使用klib加速数据清理和预处理
  6. CCIE-LAB-第十六篇-NAT+OSPF下发默认路由+校验配置(模块一结束篇章)
  7. 用matlab录制声音然后进行读取和播放
  8. 怎么在html中加入相对链接,html直接跳转超链接 html中怎么实现同一页面超级链接...
  9. 编译器C-Free V352注册算法分析
  10. 车企建设CDP可能会遇到的坑和挑战,从CRM、SCRM到CDP
  11. Unix网络编程卷1源代码使用
  12. 微信公众号 开发详解03【开通原创、模板设置、排版设置、编辑器介绍】
  13. rpg服务器无限刷金币bug,魔兽世界怀旧服:邮箱交易BUG无限刷金币?小号回档一次1000金!...
  14. 详解AUTOSAR:什么是AUTOSAR?(理论篇—1)
  15. 狼的故事17:大结局
  16. 推荐一个比较好用的画廊展示图片(支持无限轮播)的控件ViewPagerGallery
  17. Resolution-robust Large Mask Inpainting with Fourier Convolutions(2021)
  18. 大四狗:我的java历程(续)
  19. 自制瘦腰减肥茶 一月减掉小肚子
  20. Google App Engine技术架构资料大盘点

热门文章

  1. 在sheet1工作表中进行高级筛选,筛选出计算机或英语大于85分的,2017年职称计算机考试EXCEL操作题...
  2. 简约学术毕业论文答辩PPT模板
  3. MATLAB实现离散傅里叶变换DFT
  4. hikaricp使用
  5. SpringMVC工作原理及其流程
  6. 正态分布、t分布、卡方分布、F分布的关系与差异
  7. 计算机房等电位接地规范,一个实例全面讲解机房如何做防雷接地?
  8. 卡尔曼滤波算法--C语言实现
  9. android麦克风设置在哪,手机麦克风设置实用教程
  10. mui ios ajax请求,MUi框架ajax请求WebService接口实例