本节主要讲述如何根据上篇博客中选择出相应的数据之后,对其中的数据进行修改。

对某个值进行修改

例如,我们想对数据集中第2行第2列的数据进行修改:

import pandas as pd
import numpy as np
dates = pd.date_range("2017-01-08", periods=6)
data = pd.DataFrame(np.arange(24).reshape(6, 4), index=dates, columns=["A", "B", "C", "D"])
print("data:")
print(data) # 对第2行第2列的数据进行修改
data.iloc[2, 2] = 111 print("修改后的数据为:")
print(data)

输出为:

data:
A B C D
2017-01-08 0 1 2 3
2017-01-09 4 5 6 7
2017-01-10 8 9 10 11
2017-01-11 12 13 14 15
2017-01-12 16 17 18 19
2017-01-13 20 21 22 23
修改后的数据为:
A B C D
2017-01-08 0 1 2 3
2017-01-09 4 5 6 7
2017-01-10 8 9 111 11
2017-01-11 12 13 14 15
2017-01-12 16 17 18 19
2017-01-13 20 21 22 23

根据筛选条件设置值

比如,我们想对数据集中B列大于14的数据设置为14值,类似SQL中的:

update table set B = 14 where B>14

具体实现为:

import pandas as pd
import numpy as np
dates = pd.date_range("2017-01-08", periods=6)
data = pd.DataFrame(np.arange(24).reshape(6, 4), index=dates, columns=["A", "B", "C", "D"])
print("data:")
print(data) # 把B列中大于14的数设置为14
data.B[data.B>14] = 14 print("修改后的数据为:")
print(data)

输出为:

data:
A B C D
2017-01-08 0 1 2 3
2017-01-09 4 5 6 7
2017-01-10 8 9 10 11
2017-01-11 12 13 14 15
2017-01-12 16 17 18 19
2017-01-13 20 21 22 23
修改后的数据为:
A B C D
2017-01-08 0 1 2 3
2017-01-09 4 5 6 7
2017-01-10 8 9 10 11
2017-01-11 12 13 14 15
2017-01-12 16 14 18 19
2017-01-13 20 14 22 23

增加一列

增加一列空列数据:

import pandas as pd
import numpy as np
dates = pd.date_range("2017-01-08", periods=6)
data = pd.DataFrame(np.arange(24).reshape(6, 4), index=dates, columns=["A", "B", "C", "D"])
print("data:")
print(data) data["E"] = np.nan print("修改后的数据为:")
print(data)

输出为:

data:
A B C D
2017-01-08 0 1 2 3
2017-01-09 4 5 6 7
2017-01-10 8 9 10 11
2017-01-11 12 13 14 15
2017-01-12 16 17 18 19
2017-01-13 20 21 22 23
修改后的数据为:
A B C D E
2017-01-08 0 1 2 3 NaN
2017-01-09 4 5 6 7 NaN
2017-01-10 8 9 10 11 NaN
2017-01-11 12 13 14 15 NaN
2017-01-12 16 17 18 19 NaN
2017-01-13 20 21 22 23 NaN

这里,我们通过

data["E"] = np.nan

对数据集增加了一列空的数据。

另外,这里不能使用data.E=np.nan的方式对数据集增加一列。

当然,我们也可以把某列的数据增加到一列中:

import pandas as pd
import numpy as np
dates = pd.date_range("2017-01-08", periods=6)
data = pd.DataFrame(np.arange(24).reshape(6, 4), index=dates, columns=["A", "B", "C", "D"])
print("data:")
print(data) data["E"] = np.arange(6) print("修改后的数据为:")
print(data)

输出为:

data:
A B C D
2017-01-08 0 1 2 3
2017-01-09 4 5 6 7
2017-01-10 8 9 10 11
2017-01-11 12 13 14 15
2017-01-12 16 17 18 19
2017-01-13 20 21 22 23
修改后的数据为:
A B C D E
2017-01-08 0 1 2 3 0
2017-01-09 4 5 6 7 1
2017-01-10 8 9 10 11 2
2017-01-11 12 13 14 15 3
2017-01-12 16 17 18 19 4
2017-01-13 20 21 22 23 5

这样我们新增了一列E。

pandas设置值-【老鱼学pandas】的更多相关文章

  1. pandas合并merge-【老鱼学pandas】

    本节讲述对于两个数据集按照相同列的值进行合并. 首先定义原始数据: import pandas as pd import numpy as np data0 = pd.DataFrame({'key' ...

  2. pandas画图-【老鱼学pandas】

    本节主要讲述如何把pandas中的数据用图表的方式显示在屏幕上,有点类似在excel中显示图表. 安装matplotlib 为了能够显示图表,首先需要安装matplotlib库,安装方法如下: pip ...

  3. pandas处理丢失数据-【老鱼学pandas】

    假设我们的数据集中有缺失值,该如何进行处理呢? 丢弃缺失值的行或列 首先我们定义了数据集的缺失值: import pandas as pd import numpy as np dates = pd. ...

  4. pandas合并数据集-【老鱼学pandas】

    有两个数据集,我们想把他们的结果根据相同的列名或索引号之类的进行合并,有点类似SQL中的从两个表中选择出不同的记录并进行合并返回. 合并 首先准备数据: import pandas as pd imp ...

  5. pandas基本介绍-【老鱼学pandas】

    前面我们学习了numpy,现在我们来学习一下pandas. Python Data Analysis Library 或 pandas 主要用于处理类似excel一样的数据格式,其中有表头.数据序列号 ...

  6. pandas导入导出数据-【老鱼学pandas】

    pandas可以读写如下格式的数据类型: 具体详见:http://pandas.pydata.org/pandas-docs/version/0.20/io.html 读取csv文件 我们准备了一个c ...

  7. pandas选择数据-【老鱼学pandas】

    选择列 根据列名来选择某列的数据 import pandas as pd import numpy as np dates = pd.date_range("2017-01-08" ...

  8. matplotlib坐标轴设置-【老鱼学matplotlib】

    我们可以对坐标轴进行设置,设置坐标轴的范围,设置坐标轴上的文字描述等. 基本用法 例如: import numpy as np import pandas as pd import matplotli ...

  9. tensorflow卷积神经网络-【老鱼学tensorflow】

    前面我们曾有篇文章中提到过关于用tensorflow训练手写2828像素点的数字的识别,在那篇文章中我们把手写数字图像直接碾压成了一个784列的数据进行识别,但实际上,这个图像是2828长宽结构的,我 ...

随机推荐

  1. 精心收集的 95 个超实用的 JavaScript 代码片段( ES6+ 编写)

    https://www.html.cn/archives/8748#table-of-contents https://www.haorooms.com/post/js_regexp

  2. jsp篇 之 Jsp中的内置对象和范围对象

    Jsp中的内置对象: 在jsp页面代码中不需要声明,直接可以使用的对象. 一共有[9个内置对象]可以直接使用. 对象类型           名字 PageContext          pageC ...

  3. Django模板语言初识

    一.Django框架简介 1.MVC框架 MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控 ...

  4. mybatis操作mysql的奇淫技巧总结(代码库)

    1.添加公共sql代码段 使用<sql> 和 <include> 标签 <sql id="userSubassemblyRecordParam"> ...

  5. js侧边菜单

    目标 实现一个侧边栏菜单,最多二级,可以收起展开.用于系统左侧的主菜单. 大多数系统都会有这样的菜单,用于导航功能,切换到不同的操作页面.在单页应用系统中,菜单一般是固定在左侧,分组节点上配图标,高亮 ...

  6. 越光后端开发——ygapi(1.新建项目ygapi、新建MySQL数据库yg、项目连接数据库)

    1.新建MySQL数据库 show databases;//查看已经有的数据库 create database yg; 2.新建项目ygapi 1.使用pycharm新建django项目取名ygapi ...

  7. 异步请求之ajax

    一.初识ajax 1.下载引入jQuery <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"& ...

  8. 第十二节:Lambda、linq、SQL的相爱相杀(1)

    一. 谈情怀  Lambda.Linq.SQL伴随着我的开发一年又一年,但它们三者并没有此消彼长,各自占有这一定的比重,起着不可替代的作用. 相信我们最先接触的应该就是SQL了,凡是科班出身的人,大学 ...

  9. django - 总结 - redis缓存

    八.redis 补充- 操作 - 增删改查 对字典,重新设计结构,增删改查. hmset  keys  hget   scan_iter  hgetall  import redis import j ...

  10. split host

    # encoding:utf-8 _portprog = None def split_host_port(host): """ split the host :para ...