一、对DataFrame的认知

DataFrame的本质是行(index)列(column)索引+多列数据。

为了简化理解,我们不妨换个思路…

现实中,为了简化对一件事物的描述,我们会选择几个特征。

例如,从(性别、身高、学历、职业、爱好..)等角度去刻画一个人,这些“角度”即为“特征”。

其中,不同的行表示不同的记录;列代表特征,不同记录因各个特征之间的差异而不同。

DataFrame默认索引是序号(0,1,2…),可以理解成位置索引。一般我们用id标识不同记录,不会改变index。但为了理解不同特征(列)含义,我们往往会重新指定column。

一些简易但不算严谨的理解是:

行列

行 – index – 记录 (一般沿用默认索引)

列 – column – 特征 (自定义索引)

索引

默认索引 – 序号 – 位置 – 方便索引但理解不易

自定义索引 – 特征名称 – 属性 – 便于理解

二、对dataframe进行行列数据筛选

import pandas as pd,numpy as np

from pandas import DataFrame

df = DataFrame(np.arange(20).reshape((4,5)),column = list('abcde'))

1.df[]&df. 选取列数据

df.a

df[[‘a','b']]

2.df.loc[[index],[colunm]] 通过标签选择数据

不对行进行筛选时,[index]处填 : (不能为空),即df.loc[:,'a']表示选取a列全部数据。

df.loc[0,'a']

df.loc[0:1,[‘a','b']]

df.loc[[0,2],[‘a','c']]

3.df.iloc[[index],[colunm]] 通过位置选择数据

不对行进行筛选时,同df.loc[],即[index]处不能为空。

df.iloc[0,0]

df.iloc[0:1,1:3]

df.iloc[[0,2],[1,3]]

4.df.ix[[index],[column]] 通过标签or位置选择数据

df.ix[]混合了标签和位置选择。需要注意的是,[index]和[column]的框内需要指定同一类的选择。

df.ix[[0:1],[‘a',3]]报错

以上这篇pandas系列之DataFrame 行列数据筛选实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

本文标题: pandas系列之DataFrame 行列数据筛选实例

本文地址: http://www.cppcns.com/jiaoben/python/225070.html

python dataframe 列筛选_pandas系列之DataFrame 行列数据筛选实例相关推荐

  1. 【Python零基础快速入门系列 | 03】AI数据容器底层核心之Python列表

    • 这是机器未来的第7篇文章 原文首发地址:https://blog.csdn.net/RobotFutures/article/details/124957520 <Python零基础快速入门 ...

  2. python如何按列输出_pandas中的DataFrame按指定顺序输出所有列的方法

    问题: 输出新建的DataFrame对象时,DataFrame中各列的显示顺序和DataFrame定义中的顺序不一致. 例如: import pandas as pd grades = [48,99, ...

  3. python dataframe 列_python pandas库中DataFrame对行和列的操作实例讲解

    用pandas中的DataFrame时选取行或列: import numpy as np import pandas as pd from pandas import Sereis, DataFram ...

  4. oracle查询一列汇总,【学习笔记】Oracle数据筛选 查找oracle所有表中的特定列中的某些数据...

    天萃荷净 开发DBA反映,根据需求需要查找Oracle数据库中所有表中特定的列中指定的关键词的数据,和数据内容和数量 找出数据库中所有表表中REMARK列中含有WN.wind.wlr中表名和数量 de ...

  5. python用循环输入给数组赋值_python 循环数据赋值实例

    python 循环数据赋值实例 python在数值赋值的时候可以采用数值内循环赋值,很方便 如下 a = [x for x in range(10)] 这样 a = [0,1,2,3,4,5,6,7, ...

  6. python dataframe列数值相加_对dataframe进行列相加,行相加

    {"moduleinfo":{"card_count":[{"count_phone":1,"count":1}],&q ...

  7. python两列相乘_pandas按两列分组,另两列相乘

    我有一个这样分组的数据帧price quantity vat date brand 20-Jun-13 Reebok 7.0 8 2.2 Adidas 12.0 3 3.8 Campus 2.5 38 ...

  8. python对excel某一列去重-python中怎么对dataframe列去重

    python中对已经生成的Series,怎样组合成DataFrame 如 a = Series([1,2,3]) b = Series([2,3,4]) 怎样将a b组合成一个DataFzip函数接受 ...

  9. python创建一个空的dataframe_python 创建一个空dataframe 然后添加行数据的实例

    实例如下所示: import pandas as pd import re import math dframe1 = pd.read_excel("window regulator分析报告 ...

最新文章

  1. 简单工厂模式_计算器实现
  2. solidworks activator未响应_SolidWorks之初识工程图
  3. 同步电路设计的一些问题(时序分析基础,同步电路设计规则)
  4. LSTM如何解决梯度消失或爆炸的?
  5. nrf52832 DFU详细步骤 SDK13
  6. C++radix sort基数排序的实现算法之二(附完整源码)
  7. 开源PCRF、PCRF体验与PCRF实现
  8. 面试过程中千万不要犯这 5 点低级错误
  9. td过长,将固定宽度table撑开
  10. 电脑显示连接了网络但是不能上网_为什么电脑插上网线显示已连接却上不了网...
  11. MySQL中count(*)用法
  12. struts2与spring集成时,关于class属性及成员bean自动注入的问题
  13. 基于VerilogHDL的VGA驱动设计
  14. [转]让你的网页文本框增加光晕效果与提示,水印(类似QQ2011)
  15. linux中cpu_to_be32,Linux cpufreq framework(2)
  16. JAVA基础之类和对象
  17. 【Ocr】ocr表格检测;返回结果说明;可定制表格模板识别处理
  18. Vue组件小tips
  19. web前端开发经验总结
  20. 6个好用到爆的音频、配乐素材网站,BGM都在这里了

热门文章

  1. 【云原生之kubernetes实战】在k8s环境下部署BookBrowser电子书浏览器
  2. 数学基础之代数学(6)——群
  3. ESP8266红外学习遥控器
  4. JAVA基础_IO流_字节流_抽象类OutStreamInputStream
  5. 代理服务器没有响应解决方案
  6. 【Java毕设】基于SpringBoot实现新冠疫情统计系统(Idea+Navicat)
  7. Frenet坐标系与Cartesian坐标系互转(三):应用示例
  8. 历时三年“鸽王”Filecoin主网上线,分布式存储市场将迎来最强劲敌?
  9. python文件定位函数_C语言中文件定位函数总结
  10. 使用CodeIgniter框架发送QQ邮件