2-pandas

查看DataFrame

先创建一个DataFrame

>>> import numpy as np
>>> d = np.random.rand(6,4)
>>> df = pd.DataFrame(data=d,index=['one','two','three','four','five','six'],columns=['A','B','C','D'])
>>> df
              A         B         C         D
one    0.716907  0.714715  0.424210  0.037944
two    0.283037  0.930533  0.695687  0.698150
three  0.303198  0.104441  0.893804  0.071477
four   0.164282  0.824111  0.361558  0.109699
five   0.862284  0.577114  0.157905  0.259883
six    0.268228  0.067560  0.405446  0.852927
  • 查看DataFrame中头部和尾部的行

    df.head()  #默认前5行,加入参数n表示前n行
    df.tail()  #默认后5行,加入参数n表示后n行
    
  • 显示行列数、索引(即行标签)、列(标签)和numpy 数据:

    df.shape
    
    df.index
    
    df.columns
    
    df.values
    
  • describe()函数用于对数据的快速统计汇总:

    >>> df.describe()
                  A         B         C         D
    count  6.000000  6.000000  6.000000  6.000000
    mean   0.432989  0.536412  0.489768  0.338347
    std    0.284107  0.368231  0.262155  0.350471
    min    0.164282  0.067560  0.157905  0.037944
    25%    0.271930  0.222609  0.372530  0.081033
    50%    0.293117  0.645914  0.414828  0.184791
    75%    0.613479  0.796762  0.627817  0.588584
    max    0.862284  0.930533  0.893804  0.852927
    
  • 查看转置后的数据 df.T,df表格本身没被修改

    >>> df.T
            one       two     three      four      five       six
    A  0.716907  0.283037  0.303198  0.164282  0.862284  0.268228
    B  0.714715  0.930533  0.104441  0.824111  0.577114  0.067560
    C  0.424210  0.695687  0.893804  0.361558  0.157905  0.405446
    D  0.037944  0.698150  0.071477  0.109699  0.259883  0.852927
    
  • 按轴进行排序:

    df.sort_index(axis, ascending)

    • axis = 0时表示按行标签排序,ascending=False表示降序,True表升序
    • axis = 1时表示按列标签排序
    >>> df.sort_index(axis=1, ascending= False) 
                  D         C         B         A
    one    0.037944  0.424210  0.714715  0.716907
    two    0.698150  0.695687  0.930533  0.283037
    three  0.071477  0.893804  0.104441  0.303198
    four   0.109699  0.361558  0.824111  0.164282
    five   0.259883  0.157905  0.577114  0.862284
    six    0.852927  0.405446  0.067560  0.268228
    

提取数据

  • 提取列

    1. df.列名
    2. df['列名']
    >>> df.A
    one      0.716907
    two      0.283037
    three    0.303198
    four     0.164282
    five     0.862284
    six      0.268228
    Name: A, dtype: float64
    
    >>> df['A']
    one      0.716907
    two      0.283037
    three    0.303198
    four     0.164282
    five     0.862284
    six      0.268228
    Name: A, dtype: float64
    
  • 提取行(利用切片方式):

    1. 使用索引方法,如 df[1:3], df[1:5]
    2. 使用标签方法,如 df['one':'three'],
    >>> df[1:3]
                  A         B         C         D
    two    0.283037  0.930533  0.695687  0.698150
    three  0.303198  0.104441  0.893804  0.071477
    
    #或者
    >>> df['two':'three']
                  A         B         C         D
    two    0.283037  0.930533  0.695687  0.698150
    three  0.303198  0.104441  0.893804  0.071477
    
  • 指定行和列(标签切片)df.loc[]
      df.loc[:, :],                     #所有行所有列
      df.loc[:,['A','B']],              #所有行,只有 A、B列
      df.loc['one':'four',['A','C']]#第 one~four 行,只有A、C列
    

    >>> df.loc['one':'four',['A','C']]  
                  A         C
    one    0.716907  0.424210
    two    0.283037  0.695687
    three  0.303198  0.893804
    four   0.164282  0.361558
    

    指定某行某列的一个数据

    df.loc['three','B'] ,#第3行的第B列的数据
    df.loc['three',['B','C']]#第3行的第B、C列的数据
    
  • 指定行和列(数值切片):df.iloc[]

    用法与 df.loc[]一样,只是df.loc[] 用的是标签名(什么行什么列),而 df.iloc[],用的是数字(第几行第几列)。

  • 快速获取或修改某一个数据df.iat[行,列]

    获取第0行第0列的值:

    >>>df.iat[0,0]
    0.716907
    

    修改第0行第0列的值为1.111:

    >>>df.iat[0,0] = 1.111
    df
                  A         B         C         D
    one    1.111000  0.714715  0.424210  0.037944
    two    0.283037  0.930533  0.695687  0.698150
    three  0.303198  0.104441  0.893804  0.071477
    four   0.164282  0.824111  0.361558  0.109699
    five   0.862284  0.577114  0.157905  0.259883
    six    0.268228  0.067560  0.405446  0.852927
    
小结:

本次学习了以下知识点

  • 查看:几个函数 head(n)、tail(n)、shape、index、columns、values、describe()

  • 提取:

    列:df.A、df["A"]

    行:df[:]

    三个函数:loc[], iloc[], iat[]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

[小G]

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值