pandas基礎入門

import numpy as np
import pandas as pd
data=pd.Series([0.25,0.5,0.75,1.0])
#print(data)
'''
0    0.25
1    0.50
2    0.75
3    1.00
dtype: float64
'''
#series有values屬性和index屬性。
#print(data.values)
#print(data.index)
#[0.25 0.5  0.75 1.  ]
#RangeIndex(start=0, stop=4, step=1)
#series和numpy數組的不同是索引,numpy是隱式索引,series是顯示索引,而且可以定製series的索引。
data1=pd.Series([0.25,0.5,0.75,1.0],index=['a','b','c','d'])
#print(data1)
'''
a    0.25
b    0.50
c    0.75
d    1.00
dtype: float64
'''
#可以吧series看成特殊的字典。
#print(data1.keys())#Index(['a', 'b', 'c', 'd'], dtype='object')
#print(data1.items()#<zip object at 0x08325670>
#print(list(data1.items()))#[('a', 0.25), ('b', 0.5), ('c', 0.75), ('d', 1.0)]
dict1={'aa':'星期一','bb':'星期二','cc':'星期三'}
data2=pd.Series(dict1)
#print(data2)
'''
aa    星期一
bb    星期二
cc    星期三
dtype: object
'''
#dataframe也可以看成是一個通用型的numpy數組或是字典。看成若干series序列,有共同索引構成的。
dict2={'aa':'工作','bb':'工作','cc':'休息'}
data3=pd.Series(dict2)
data4=pd.DataFrame({'weekday':data1,'work':data2})#這裏面放的是字典。
#print(data4)
'''
    weekday work
a      0.25  NaN
aa      NaN  星期一
b      0.50  NaN
bb      NaN  星期二
c      0.75  NaN
cc      NaN  星期三
d      1.00  NaN
'''
#dataframe有index和columns兩個屬性。最好把dataframe看成通用的字典,有助於理解索引。
#pandas還有一個index對象,該對象可以看成一個不可變數組或有序集合。在取值上與數組很相似。
#這是集合操作:
inda=pd.Index([1,3,5,7,9])
indb=pd.Index([2,3,5,7,11])
#print(inda&indb)
#print(inda | indb)
#print(inda^indb)
'''
Int64Index([3, 5, 7], dtype='int64')
Int64Index([1, 2, 3, 5, 7, 9, 11], dtype='int64')
Int64Index([1, 2, 9, 11], dtype='int64')
'''
#pd.series的索引默認是顯示的索引。
lizi=pd.Series(['a','b','c'],index=[1,3,5])
#print(lizi[1])#取值是顯式索引  a
#print(lizi[1:3])#切片時隱式索引
'''
3    b
5    c
'''
#爲了不混淆,引入索引器。loc()代表切片和取值都是顯式,iloc()代表都是隱式索引。
#對於dataframe來說,可以看成一個字典,此時取值的話一般都是按列取,當看成多維數組的話,
#可以用values屬性來查看行,
#print(data4.values)
'''
[[0.25 nan]
 [nan '星期一']
 [0.5 nan]
 [nan '星期二']
 [0.75 nan]
 [nan '星期三']
 [1.0 nan]]
 '''
#進行轉置,data.T
#若是要取某行的話,只需要data.values[行號]

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章