zoukankan      html  css  js  c++  java
  • DataFrame常用的属性和方法

    属性和方法

    DataFrame有许多的的属性和方法使得pabdas用起来非常的快捷简便。

    导入数据:

    1 import pandas as pd
    2 import numpy as np
    3 from pandas import Series,DataFrame 
    4 test=pd.read_excel("/Users/yaozhilin/Downloads/数据.xls",sep="t")
    5 test.head(5)#显示前五行

    •属性

    test.columns    获取DataFrame的列名
    test.index        获取DataFrame的索引名
    test.dtypes      获取DataFrame的没列数据的属性
    test.shape       获取DataFrame的行和列数
    test.size          获取DataFrame的总元素

    1 test.columns
    Index(['公司名称', '联系人姓名', '联系人头衔', '地址', '电话', '传真', '电子邮件', '日期', '附件'], dtype='object')
    1 test.index
    RangeIndex(start=0, stop=91, step=1)
    1 test.dtypes
    公司名称             object
    联系人姓名            object
    联系人头衔            object
    地址               object
    电话               object
    传真               object
    电子邮件             object
    日期       datetime64[ns]
    附件              float64
    dtype: object
    1 test.shape
    (91, 9)
    1 test.size
    819

    •方法

    方法使用
    1、head()                                        显示数据前几行(默认5行)
    2、tail()                                          显示数据后几行(默认5行)
    3、rename(index/columns={a:a1})      数据索引或列重命名
    4、replace(columns:{a:a1})                替换数据
    5、unique                                       显示唯一值
    6、sort_index                                  索引排序
    7、sort_values                                 值排序
    8、value_counts                               统计每个值的数量
    9、describe                                     统计所有值的数据

    10、max/min/sum/mean

    11、reindex                                      创建新索引

     

    下面举几个列子

    rename/head

    1 test.rename(columns={"联系人姓名":"姓名","联系人头衔":"职位"},inplace=True)
    2 test.head(5)

    replace/tail

    1 test.replace({"职位":{"物主":"房东"}}).tail(5)

    unique

    1 test["职位"].unique()
    array(['销售代表', '物主', '采购员', '市场经理', '结算经理', '销售代理', '销售员', '销售经理', '市场助理',
           '助理销售代理', '助理销售代表', '物主/市场助理'], dtype=object)
    1 len(test["职位"].unique())
    12

    sort_index
    1 test.sort_index(ascending=False).head(5)#ascending默认为true

    sort_values
    1 test.sort_values(by=["姓名","职位"]).head(4)

    duplicated()/value_counts

    1 test.duplicated().value_counts()#判断该数据中是否有重复值
    False    91
    dtype: int64
    1 test["职位"].value_counts()
    销售代表       17
    物主         17
    市场经理       12
    销售经理       11
    结算经理       10
    销售员         7
    市场助理        6
    销售代理        5
    采购员         2
    助理销售代理      2
    助理销售代表      1
    物主/市场助理     1
    Name: 职位, dtype: int64

    describe
    1 test["附件"]=range(91)
    2 test.describe()

     reindex

    1 test.reindex(np.arange(2,93)).head(4)

  • 相关阅读:
    Javaweb开发环境与搭建
    剑指Offer:面试题32——从1到n整数中1出现的次数(java实现)
    剑指Offer:面试题31——连续子数组的最大和(java实现)
    剑指Offer:面试题30——最小的k个数(java实现)
    剑指Offer:面试题29——数组中出现次数超过一半的数字(java实现)
    剑指Offer:解决难题时的三大方法
    剑指Offer:面试题28——字符串的排列(java实现)(待序)
    剑指Offer:面试题27——二叉搜索树与双向链表(java实现)
    剑指Offer:面试题26——复制复杂的链表(java实现)
    剑指Offer:面试题25——二叉树中和为某一值的路径(java实现)
  • 原文地址:https://www.cnblogs.com/ye20190812/p/13403030.html
Copyright © 2011-2022 走看看