pandas使用小贴士

1 通过Series创建DataFrame

在pandas系列的第一篇博文中曾提到,Series可视为DataFrame的一种特例,即只有一列数据。既然如此,是否可以并列多个Series组成一个DataFrame呢?当然可以,通过这种方式创建DataFrame也称为用字典建立数据,由各列列名充当字典的键,该列数据构成的Series充当该键对应的值。示例如下:

上图中,Series类型充任df_1的第二列,因为pandas默认以“0,1,2,3”形式给行列命名,本例中,列名就是字典的键,行名默认自动生成,为了与已有行名对应,在创建第二列的Series时指定了行名index=list(range(4))。
另外,numpy中的一维数组也可以起到充当DataFrame某一列数据的作用,如果给某一列赋值时只有一个值,则pandas会自动根据行的数目重复该值以补全该列。

2 查看DataFrame的常用属性

注意:下面的例子是在一个新建的df_2上演示,同样通过上一小节介绍的字典方式创建,但数据量略微大一些。

2.1 查看各列数据类型

2.2 查看行列名和具体数据

使用values方法可以直接得到和numpy中一样的多维数组形式的数据类型。

2.3 查看数据描述

数据描述只是针对数值型数据给出某些列的统计信息。
对于pandas的一些转置、排序操作,这些方法和numpy中的方法无异,在此不再赘述。

3 设定条件选取数据

前一篇博文提到用行列名、行列位置以及二者混合的方式选取数据,其实还有一种通过给定条件选择数据的方法。

上图中,设置条件选择A列中大于零的值,然后将其所在的行抽取出来组成新的DataFrame。
当然,也可以在设定条件的同时,指定所要选取的列。

本期到此结束,后面将继续介绍pandas的常用操作。

浅谈python的第三方库——pandas(二)的更多相关文章

  1. 浅谈python的第三方库——pandas(一)

    pandas作为python进行数据分析的常用第三方库,它是基于numpy创建的,使得运用numpy的程序也能更好地使用pandas. 1 pandas数据结构 1.1 Series 注:由于pand ...

  2. 浅谈python的第三方库——pandas(终)

    作为pandas系列的最终章,本文引出一个数据"复制"问题. 示例如下: 从上图中可以看到:我们对data_pd做了删除一行的操作,但是这并没有改变变量data_pd在内存中的值, ...

  3. 浅谈python的第三方库——pandas(三)

    令笔者对pandas印象最为深刻的一件事,就是在pandas中已经内置了很多数据导入导出方法,然而本人并不了解,在一次小项目的工作中曾手写了一个从excel表格导入数据到DataFrame的pytho ...

  4. 浅谈python的第三方库——numpy(一)

    python作为广受欢迎的一门编程语言,其中很重要的一个原因便是它可以使用很多第三方库. 对第三方库的理解,在笔者看来就是一些python爱好者和专门的研发机构,为满足某一特定应用领域的需要,使用py ...

  5. 浅谈python的第三方库——numpy(终)

    本文作为numpy系列的总结篇,继续介绍numpy中常见的使用小贴士 1 手动转换矩阵规格 转换矩阵规格,就是在保持原矩阵的元素数量和内容不变的情况下,改变原矩阵的行列数目.比如,在得到一个5x4的矩 ...

  6. 浅谈python的第三方库——numpy(二)

    前一期博文中,初步探索了numpy中矩阵的几种运算操作,本文将展示numpy矩阵的元素抽取与合并操作. 1 元素抽取 在我们使用矩阵的时候,有时需要提取出矩阵的某些位置上的元素单独研究,这时就需要熟悉 ...

  7. 浅谈python的第三方库——numpy(三)

    numpy库中矩阵的常用方法 1 矩阵转置 从上图可以看出:使用方法a.T可以将矩阵a转置. 2 均值与方差 注意:方法a.mean()会对矩阵a的所有元素求均值,a.var()也是考虑矩阵a的所有元 ...

  8. python重要第三方库pandas加载数据(详解)

    Pandas数据加载 关注公众号"轻松学编程"了解更多. pandas提供了一些用于将表格型数据读取为DataFrame对象的函数,其中read_csv和read_table这两个 ...

  9. 浅谈python中selenium库调动webdriver驱动浏览器的实现原理

    最近学web自动化时用到selenium库,感觉很神奇,遂琢磨了一下,写了点心得. 当我们输入以下三行代码并执行时,会发现新打开了一个浏览器窗口并访问了百度首页,然而这是怎么做到的呢? from se ...

随机推荐

  1. 20190728三人开黑517codingACM模拟赛

    三人组队开黑ACM膜你赛 果然我最蔡 我就写了ACF所以就写这些吧awa Problem A 人话:给你一个w×h的矩形蛋糕,然后告诉你两个蜡烛的坐标,两个蜡烛都在网格点上且不在蛋糕边缘,问如何切一刀 ...

  2. 乌班图14更新软件提示错误:https://mirrors.aliyun.com kubernetes-xenial InRelease: 由于没有公钥,无法验证下列签名: NO_PUBKEY 6A030B21BA07F4FB

    提示如下 获取: https://mirrors.aliyun.com kubernetes-xenial InRelease 忽略 https://mirrors.aliyun.com kubern ...

  3. 物流跟踪API-快递单订阅

    上一篇文章我们讲解了轨迹查询的接口,通过快递鸟接口可以实现实时查询物流轨迹,这次给大家推荐订阅服务功能. 为了更好的理解订阅服务,我们来做个对比, 即时查询是主动查询物流轨迹,需要我们主动调用接口才能 ...

  4. 《 Java 编程思想》CH02 一切都是对象

    用引用操纵对象 尽管Java中一切都看作为对象,但是操纵的标识符实际上对象的一个"引用". String s; // 这里只是创建了一个引用,而不是一个对象 String s = ...

  5. vb.net datagridview 使用方法

    目录:  1. 取得或者修改当前单元格的内容  2. 设定单元格只读  3. 不显示最下面的新行  4. 判断新增行  5. 行的用户删除操作的自定义  6. 行.列的隐藏和删除  7. 禁止列或者行 ...

  6. java上传组件commons-fileupload的一些使用方法

    在 http://www.apache.org,下载commons-fileupload-1.2.1.jar包,并把这个包加到工程中,以下是记录这个上传组件的一些使用方法. html测试页面,实现上传 ...

  7. TTStand 基础知识[8] Build-In StepTypes(3)

    Build-In Step Types的最后一篇,前面两篇的连接如下: TestStand 基础知识[7] Build-In StepTypes(2) TestStand 基础知识[6] Build- ...

  8. solr常用操作及集成分词器或cdh集群部署说明

    首先,如果是从http://lucene.apache.org/solr/下载的solr,基本都是自带集成的jetty服务,不需要单独搭建tomcat环境,但是要注意jdk版本,直接解压通过cmd命令 ...

  9. Vue子组件和根组件的关系

    代码: <script type="text/javascript"> const Foo = Vue.extend({ template: `<div id=& ...

  10. Ubuntu18.04-Java8安装

    添加ppa sudo add-apt-repository ppa:webupd8team/java sudo apt-get update 安装oracle-java-installer sudo ...