import pandas as pd
import numpy as np
s1 = pd.Series([4,7,-5,3]) #創(chuàng)建一個(gè)series 索引為默認(rèn)值
print(s1)
s1.values
s1.index
s2 = pd.Series([4.3,44,7,6],index=['d','s','f','a']) #想當(dāng)與一個(gè)有序字典
print(s2)
DataFrame
data = {'year':[2000,2001,2002,2003],
'income':[299999,333333,9999999,333333333],
'pay':[2200000,4994949,349394844,82398423048]}
df1 = pd.DataFrame(data)
print(df1)
df2 = pd.DataFrame(np.arange(12).reshape((3,4))) #用順序表頭
print(df2)
df3 = pd.DataFrame(np.arange(12).reshape((3,4)),index=['a','e','c'],columns=[2,12,324,4]) #指定表頭
print(df3)
print(df1.columns) #行
print(df1.index) #列
print(df1.values) #值
print(df1.describe()) #計(jì)算里面的值
print(df3.sort_index(axis=1)) #水平方向排序 即列排序
print(df3.sort_index(axis=0)) #垂直方向排序 即行排序
print(df3.sort_values(by=12)) #對(duì)12這個(gè)數(shù)進(jìn)行排序
選擇數(shù)據(jù)
dates = pd.date_range('20200101',periods=6)
df1 = pd.DataFrame(np.arange(24).reshape((6,4)),index=dates,columns=['A','B','C','D'])
print(df1)
print(df1.A) #獲取A列
print(df1['A'])
print(df1['20200102':'20200105']) #獲取02 -05行
通過(guò)索引標(biāo)簽選擇數(shù)據(jù)
print(df1.loc['20200102',['A','C']])
print(df1.loc[:,['A','C']])
通過(guò)位置選擇數(shù)據(jù)
print(df1.iloc[2]) #第二行
print(df1.iloc[1:3,2:4]) #1-3行 2-4列
print(df1.iloc[[1,2,4],[1,3]]) #提取不連續(xù)行 不連續(xù)列
混合標(biāo)簽
print(df1.ix[2:3,['A','C']])
賦值操作
print(df1.A >12) #篩選出值大于12的行
print(df1[df1.A>12])
dates = np.arange(20200101,20200107)
df1 = pd.DataFrame(np.arange(24).reshape((6,4)),index=dates,columns=['A','B','C','D'])
print(df1)
df1.iloc[2,2]=29 #給第二行第二個(gè)賦值
df1.loc[20200103,'C']=2 #其中20200103不能加引號(hào)
print(df1)
df1[df1.A>10]=0 #將大于十的數(shù)全部賦值為0
print(df1)
df1.A[df1.A==0] =1 #將等于0的行賦值為1
df1['E']=10 #
print(df1) #添加一個(gè)新的列
df1['F']=pd.Series([1,2,3,4,5,6],index=dates) #添加一個(gè)新的列 值可以自己給定
print(df1)
df1.insert(1,'G',df2['E']) #插入一列為G的索引 內(nèi)容為E中的
print(df1)
g = df1.pop('G') #彈出G列
df1.insert(6,'G',g) #在最后輸入
print(df1)
del df1['G'] #刪除G列
df2 = df1.drop('A','B') #刪除AB列
df2 = df1.drop([20200101,20200102],axis=0) #刪除 行
處理丟失數(shù)據(jù)‘
dates = np.arange(20200101,20200105)
df1 = pd.DataFrame(np.arange(12).reshape((4,3)),index=dates,columns=['A','B','C'])
print(df1)
df2 = pd.DataFrame(df1,index=dates,clumns=['A','B','C','D','E'])
print(df2)
s1 = pd.Series([3,4,6],index=dates[:3])
s2 = pd.Series([33,43,4],index=dates[1:])
df2['D'] = s1
df2['E'] = s2
print(df2)