第五章 5.1 Pandas的数据结构介绍
import pandas as pd
import numpy as np
#Pandas的数据结构:Series
obj=pd.Series([4,7,5,3],index=["a","b","c","d"])
print(obj.array)
print(obj.index)
print(obj[["c","a","d"]])
print(np.exp(obj))
print("b" in obj)
obj.index=["Bob","Steve","Jeff","Ryan"]
print(obj)
sdata={"Ohio":35000,"Oregon":71000,"Texas":16000,"Utah":5600}
obj2=pd.Series(sdata)
print(obj2)
print(obj2.to_dict())
states=["Califonia","Ohio","Oregon","Texas"]
obj3=pd.Series(sdata,index=states)
print(obj3)
print(obj3+obj2)
#DataFrame
data={"state":["Ohio","Ohio","Ohio","Neveda","Neveda","Neveda"],
"year":[2000,2001,2002,2001,2002,2003],
"pop":[1.5,1.7,3.6,2.4,2.9,3.2]}
frame=pd.DataFrame(data)
print(frame)
print(frame.head())
print(frame.tail(3))
frame2=pd.DataFrame(data,columns=["year","state","pop","debt"])
print(frame2)
print(frame2["state"])
print(frame2.loc[1])
print(frame2.iloc[2])
frame2["debt"]=np.arange(6)
frame2["eastern"]=frame2["state"]=="Ohio"
print(frame2)
del frame2["eastern"]
print(frame2.columns)
#嵌套字典的字典
populations={"Ohio":{2000:1.5,2001:1.7,2002:3.6},
"Neveda":{2001:2.4,2002:2.9}}
frame3=pd.DataFrame(populations)
print(frame3.T)
print(pd.DataFrame(populations,index=[2001,2002,2003]))
pdata={"Ohio":frame3["Ohio"][:-1],
"Neveda":frame3["Neveda"][:2]}
print(pd.DataFrame(pdata))
frame3.index.name="year"
frame3.columns.name="state"
print(frame3)
print(frame3.to_numpy())
print(frame2.to_numpy())
#索引对象
newObj=pd.Series(np.arange(3),index=["a","b","c"])
print(newObj.index)
#newObj.index[1]="d"
labels=pd.Index(np.arange(3))
newObj2=pd.Series([1.5,-2.5,0],index=labels)
print(newObj2)