• Pandas库中的DataFrame


    1 简介

    DataFrame是Python中Pandas库中的一种数据结构,它类似excel,是一种二维表

    或许说它可能有点像matlab的矩阵,但是matlab的矩阵只能放数值型值(当然matlab也可以用cell存放多类型数据),DataFrame的单元格可以存放数值、字符串等,这和excel表很像。

    同时DataFrame可以设置列名columns与行名index,可以通过像matlab一样通过位置获取数据也可以通过列名和行名定位,具体方法在后面细说。

    2 创建DataFrame

    首先声明一下,以下都是使用的Python 3.6.5版本为例,Python2应该也差不多吧(大概

    在所有操作之前当然要先import必要的pandas库,因为pandas常与numpy一起配合使用,所以也一起import吧。

    import pandas as pd 
    import numpy as np

    如果还没安装直接在cmd里pip安装吧,如果有版本选择问题,参看之前的帖子。

    pip install pandas pip install numpy

    2.1 直接创建

    可以直接使用pandas的DataFrame函数创建,比如接下来我们随机创建一个4*4的DataFrame。

     

    df1=pd.DataFrame(np.random.randn(4,4),index=list('ABCD'),columns=list('ABCD'))

    其中第一个参数是存放在DataFrame里的数据,第二个参数index就是之前说的行名(或者应该叫索引?),第三个参数columns是之前说的列名。

    后两个参数可以使用list输入,但是注意,这个list的长度要和DataFrame的大小匹配,不然会报错。当然,这两个参数是可选的,你可以选择不设置。

    而且发现,这两个list是可以一样的,但是每行每列的名字在index或columns里要是唯一的。

    当然,如果你的数据量贼小,也可以自己输入创建,类似这样。

    df2=pd.DataFrame([[1,2,3,4],[2,3,4,5],[3,4,5,6],[4,5,6,7]],index=list('ABCD'),columns=list('ABCD'))

    2.2 使用字典创建

    仍然是使用DataFrame这个函数,但是字典的每个key的value代表一列,而key是这一列的列名。比如这样。

    dic1={'name':['小明','小红','狗蛋','铁柱'],'age':[17,20,5,40],'gender':['','','','']} df3=pd.DataFrame(dic1)

    3 查看与筛选数据

    python没有matlab的工作区直接查看变量与内容,这大概是python科学计算的一个缺点。所以需要格外的代码来查看,最基本的直接写变量名与print就不说了。

    3.1 查看列的数据类型

    使用dtypes方法可以查看各列的数据类型,比如说刚刚的df3。

    df3.dtypes

    3.2 查看DataFrame的头尾

    使用head可以查看前几行的数据,默认的是前5行,不过也可以自己设置。

    使用tail可以查看后几行的数据,默认也是5行,参数可以自己设置。

    比如随意设置一个6*6的数据,只看前5行。

    df4=pd.DataFrame(np.random.randn(6,6)) df4.head()

    比如只看前3行。

     df4.head(3)
    
    
    

    比如看后5行。

     df4.tail(5)

    比如只看后2行。

     df4.tail(2)

    3.3 查看行名与列名

    使用index查看行名,columns查看列名。具体由例子感受吧。

    查看行名。

    df1.index

    查看列名。

    df3.columns
  • 相关阅读:
    食物链(带权&种类并查集)
    抓屏工具 faststone capture
    ViewerJS 一个在浏览器上查看 PDF 和电子表格的 JavaScript 库
    html中调用本地exe应用程序
    html+css构成的框架,可自行改造
    普通人每天应该睡多长时间??
    利用PDF.JS插件解决了本地pdf文件在线浏览问题(根据需要隐藏下载功能,只保留打印功能)
    解决在IE11浏览器上,css样式不起作用的问题
    Dreamweaver cs6 的安装与破解
    博客生活第一天
  • 原文地址:https://www.cnblogs.com/Niuxingyu/p/10472619.html
Copyright © 2020-2023  润新知