Pandas常用操作

时间:2019-09-29
本文章向大家介绍Pandas常用操作,主要包括Pandas常用操作使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

Pandas是一个基于NumPy的库,为python提供了易用的数据结构和数据分析工具。

导入

import pandas as pd

Pandas数据结构

Series

一维的有标签的数组,可以容纳任何类型的数据。

s = pd.Series([3,-5,7,4],index=['a','b','c','d'])

DataFrame

二维的有标签的数据结构,每一列都可能有不同的类型

data = {'Country':['Belgium','India','Brazil'],
        'Capital':['Brussels','New Delhi','Brasilia'],
        'Population':[11190846,1303171035,207847528]}
df = pd.DataFrame(data,columns=['Country','Capital','Population'])

筛选数据

s['b']                          #获取Series一个元素
df[1:]                          #获取DataFrame的一个子集

# 通过行列号获取单个数据
df.iloc[[0],[0]]
df.iat([0],[0])

# 通过行号和标签获取单个数据
df.loc[[0],['Country']]
df.at([0],['Country'])

# 通过行号和标签获取若干数据
df.ix[2]                        #获取第二行的数据和标签
df.ix[:,'Capital']               #获取某一列
df.ix[1,'Capital']               #获取某个元素

# 通过布尔变量索引
s[~(s>1)]                       #获取Series中不大于1的数据
s[(s<-1)|(s>2)]                  #获取Series中小于-1或大于2的数据
df[df['Population']>12000]        #获取人数大于12000的数据

丢弃数据

s.drop(['a','c'])               #根据label丢弃Series中的数据
df.drop('Country',axis=1)        #丢弃一列的数据 (axis=0,row-wise)(axis=1,col-wise)
                                #(axis=2,depth-wise)

排序

df.sort_index()                 #根据索引排序
df.sort_values(by='Country')     #根据某列排序
df.rank()                       #将所有数据转化为序数数据

获取数据的信息

基础信息

df.shape                        #(行,列)
df.index                        #显示index的范围和步长
df.columns                      #显示每列的信息
df.info()                       #显示DataFrame的整体信息
df.count()                      #统计每列非零元素的个数

总结信息

df.sum()                #求和     
df.cumsum()             #累加     
df.min()/df.max()        #极值
# 以上操作都是在所有列上分别进行

df.idxmin()/df.idxmax()         #看不懂

以下操作只在数值列进行
df.describe()                  #显示统计量
df.mean()                      #显示均值
df.median()                    #显示中位数

使用函数

f = lambda x:x*2
df.apply(f)                  #作用在dataframe的一行或一列上
df.applymap(f)               #作用在dataframe的每个元素上

数据对齐

缺失列默认用NaN补齐
可以用fill_value参数指定补齐数据

原文地址:https://www.cnblogs.com/JasonBUPT/p/11610032.html