1. 程式人生 > >Python對DataFrame的常規操作

Python對DataFrame的常規操作

import numpy as np
import pandas as pd
from pandas import  *
from numpy import *


data = DataFrame(np.arange(16).reshape(4,4),index = list("ABCD"),columns=list('wxyz'))
print data
print data[0:2]       #取前兩行資料
print'+++++++++++++'

print len(data )              #求出一共多少行
print data.columns.size      #求出一共多少列
print'+++++++++++++'

print data.columns        #列索引名稱
print data.index       #行索引名稱
print'+++++++++++++'

print data.ix[1]                #取第2行資料
print data.iloc[1]             #取第2行資料
print'+++++++++++++'

print data['x']      #取列索引為x的一列資料
print data.loc['A']      #取第行索引為”A“的一行資料,
print'+++++++++++++'

print data.loc[:,['x','z'] ]          #表示選取所有的行以及columns為a,b的列;
print data.loc[['A','B'],['x','z']]     #表示選取'A'和'B'這兩行以及columns為x,z的列的並集;
print'+++++++++++++'

print data.iloc[1:3,1:3]              #資料切片操作,切連續的資料塊
print data.iloc[[0,2],[1,2]]              #即可以自由選取行位置,和列位置對應的資料,切零散的資料塊
print'+++++++++++++'

print data[data>2]       #表示選取資料集中大於0的資料
print data[data.x>5]       #表示選取資料集中x這一列大於5的所有的行

print'+++++++++++++'
a1=data.copy()
print a1[a1['y'].isin(['6','10'])]    #表顯示滿足條件:列y中的值包含'6','8'的所有行。

print data.mean()           #預設對每一列的資料求平均值;若加上引數a.mean(1)則對每一行求平均值;
print data['x'].value_counts()    #統計某一列x中各個值出現的次數:

print data.describe() #對每一列資料進行統計,包括計數,均值,std,各個分位數等。