DataFrame查增改删

查 Read

类list/ndarray数据访问方式

dates = pd.date_range('',periods=10)
dates
df = pd.DataFrame(np.random.randn(10,4),index=dates,columns=['A','B','C','D'])
df #索引
df['A']
df.A
df['A']['2013-01-01']#先列后行
df.A['2013-01-01']
df[['A','C']]

下面为Pandas专用的数据访问方式

.loc 通过自定义索引获取数据

#选取某行
df.loc['2013-01-01'] #选取某列
df.loc[:,'A'] #选取特定值
df.loc['2013-01-01','A'] #先行后列 #选取指定的行/列
df.loc[[dates[0],dates[2]],:] #指定行
df.loc[:,['A','B']] #指定列
df.loc[[dates[0],dates[2]],['A','B']]#指定行列 #切片
df.loc['2013-01-01':'2013-01-04',:] #对行切片
df.loc[:,'A':'C'] #对列切片
df.loc['2013-01-01':'2013-01-04','A':'C'] #切片选取连续区块。行,列。左开右闭

.iloc 通过默认索引获取数据

#选取某行
df.iloc[3] #选取某列
df.iloc[:,2] #选取特定值:
df.iloc[1,2] #选取指定的行/列
df.iloc[[1,2,4],:] #指定行
df.iloc[:,[0,2]] #指定列
df.iloc[[1,2,4],[0,2]] #指定行列 ,先行后列 #切片
df.iloc[1:3,:] #对行切片:
df.iloc[:,1:3] #对列切片:
df.iloc[3:5,0:2] #切片选取连续区块。行,列。左开右闭

Boolean索引

#通过某列选择数据:
df[df.A > 0] #通过where选择数据:
b = df[df > 0]
b
type(b['A']['2013-01-01']) #通过 isin() 过滤数据:
df2 = df.copy()
df2['E'] = ['one', 'one','two','three','four','three','five','four','three','five']
df2
df2['E'].isin(['one','four'])
df2[df2['E'].isin(['one','four'])]

增 Create

s1 = pd.Series([1,2,3,4,5,6], index=pd.date_range('', periods=6))
s1 #新增一列数据
df2['F'] = s1
df2

改 Update

#更新一列值
df2.loc[:,'D']
df2.loc[:,'D'] = 5
df2 df2.iloc[1,3]
df2.iloc[1,3] = 10.1
df2 #通过where更新
df3 = df.copy()
df3[df3 > 0] = -df3
df3

DataFrame查增改删的更多相关文章

  1. XML简单的增改删操作

    XML文件的简单增改删,每一个都可以单独拿出来使用. 新创建XML文件,<?xmlversion="1.0"encoding="utf-8"?> & ...

  2. js 属性增改删操作

    js 属性增改删操作,可参看菜鸟教程,这里记录一个小问题:disabled属性 使用setAttribute操作无法 禁用disabled属性,需使用removeAttribute操作,原因是只要有d ...

  3. python数据类型—列表(增改删查,统计,取值,排序)

    列表是最常用的数据类型之一,通过列表可以对数据实现方便的存储,修改等操作. 先声明一个空列表: >>> names = [] >>> names [] 可以存多个值 ...

  4. oracle函数自治事务解决不能增改删的语句操作

    CREATE OR REPLACE FUNCTION SEQ3 (v_bname in VARCHAR2) return NUMBER is pragma autonomous_transaction ...

  5. EF6增改删等常用基类

    using System; using System.Linq; using System.Threading.Tasks; using System.Linq.Expressions; using ...

  6. WPF中DataGrid的应用-绑定,增改删,分页,样式

    参考以下网址: http://www.cnblogs.com/fwbnet/archive/2012/05/08/2490974.html

  7. Linq To Sql 增改删

    using System; using System.Data.Linq.Mapping; namespace ConsoleApplication3 { [Table(Name = "te ...

  8. MongoDB 基本操作(增改删)

    1.插入数据 和关系型数据库一样,增加数据记录可以使用insert语句,这是很简单的. 当插入数据时,如果此集合不存在,则MongoDB系统会自动创建一个集合,即不需要刻意预先创建集合 每次插入数据时 ...

  9. Python3 Pandas的DataFrame数据的增、删、改、查

    Python3 Pandas的DataFrame数据的增.删.改.查 一.DataFrame数据准备 增.删.改.查的方法有很多很多种,这里只展示出常用的几种. 参数inplace默认为False,只 ...

随机推荐

  1. LwIP:处理链路状态改变

    [文/告别年代   Email:byeyear@hotmail.com] 重大修订记录 ----------------------------------------- 2016.11.03 感谢@ ...

  2. make_heap()等函数的用法

    1.make_heap() make_heap()用于把一个可迭代容器变成一个堆,默认是大顶堆. 它有三个参数.第一个参数是指向开始元素的迭代器,第二个参数是指向最末尾元素的迭代器,第三个参数是les ...

  3. 中点Brehensam画圆算法

    #include<stdio.h> #include<stdlib.h> #include<graphics.h> #include<math.h> v ...

  4. 魅族pro6部分应用内adb断开连接

    魅族pro6打开支付宝,adb自动断开链接,顶部有Flyme自动保护中. 进入手机管家的设置,将Flyme支付保护关掉 再次进入支付宝页面,adb不会再自动断开链接

  5. java如何写自己的native方法实现调用本地的c++库?

    等待编辑 1:首先可以找一本jni    java native interface相关的书籍来看.

  6. 6.15-初识JSP、javaweb

    一.javaweb web服务器 tomcat C/S 客户端/服务器 B/S 浏览器/服务器 URL: http协议 https 加密的协议 localhost 127.0.0.1 常用web服务器 ...

  7. 提示ORA-01144: File size (13107200 blocks) exceeds maximum of 4194303 blocks 最大4194303 block(转)

    并不是100g的表空间,是100g的数据文件.一般情况下,单个数据文件的最大为32g.解决方法:1.创建多个数据文件,都不能超过32g2.创建大表空间.create bigfile tablespac ...

  8. Nature | 光学CNN层替换传统CNN层,超省电

    CNN 计算效率的研究一直备受关注,但由于功率和带宽的严格限制,CNN 仍难以应用在嵌入式系统如移动视觉.自动驾驶中.在斯坦福大学发表在 Nature 旗下 Scientific Reports 的这 ...

  9. node.js入门基础

    内容: 1.node.js介绍 2.node.js内置常用模块 3.node.js数据交互 一.node.js介绍 (1)node.js特点 与其他语言相比,有以下优点: 对象.语法和JavaScri ...

  10. centos已经安装了libestr但在安装libee时却提示未安装

    在loganalyzer+rsyslog日志分析错误总结;