Python — pandas
阿新 • • 發佈:2018-06-19
src query 查看 我們 RR afr 字段 數組 spa
Pandas有兩種數據結構:Series和DataFrame。
1、Series
Series類似於一維數組,和numpy的array接近,由一組數據和數據標簽組成。數據標簽有索引的作用。數據標簽是pandas區分於numpy的重要特征。索引不一定是從0開始的數字,它可以被定義。
Series有自動對齊索引的功能,當自定義的索引qinqin和字典隊員不上時,會自動選擇NaN,即結果為空,表示缺失。缺失值的處理會在後續講解。
2、DataFrame
Series是一維的數據結構,DataFrame是一個表格型的數據結構,它含有不同的列,每列都是不同的數據類型。我們可以把DataFrame看作Series組成的字典,它既有行索引也有列索引。想象得更明白一點,它類似一張excel表格或者SQL,只是功能更強大。
在構建DataFrame時,最最最常用的就是先創建一個data,data一般可以是字典和數組,再用a=DataFrame(data)來轉換為DataFrame結構。在DataFrame(data)時也可以同時傳入index和columns參數,兩個參數必須是列表型。
DataFrame中可以通過info函數直接查看數據類型和統計。列名後面是列的非空值統計量,以及數據類型,最後一行是DataFrame占用的內存大小,對於pandas來說,千萬行幾百兆的數據也是不再話下的。
1).構建DataFrame最常見的方法是傳入一個由等長列表或數組組成的字典: 例如: data={ ‘name‘:[‘bon‘,‘kate‘,‘jun‘,‘sam‘], ‘stature‘:[‘102‘,‘112‘,‘136‘,‘90‘], ‘grade‘:[‘70‘,‘76‘,‘98‘,‘88‘] } frame=DataFrame(data) DataFrame會自動加上索引,得到的結果為: name stature grade 0 bon 102 70 1 kate 112 76 2 jun 136 98 3 sam 90 88 2).也可以為DataFrame指定索引 frame2=DataFrame(data,columns=[‘name‘,‘grade‘,‘stature‘,‘birthdate‘], index=[‘one‘,‘two‘,‘three‘,‘four‘]) 跟Series中一樣若在對應的列中找不到數據,就會產生缺失值NaN. name grade stature birthdate one bon 70 102 NaN two kate 76 112 NaN three jun 98 136 NaN four sam 88 90 NaN 3).取值和賦值 查看列:可用類似字典的方式獲取一個Series(即一個列的值),如:frame2[‘name‘]; 查看行:可用索引字段ix來獲取某行的值,如:frame2.ix[‘three‘]; 可用frame2[‘birthdate‘]=1990來直接對某一列進行賦值; 4).刪除某一列的值 del frame2[‘name‘] 5)將嵌套型字典轉化為DataFrame型時,外層的鍵作為列,內層的鍵作為行索引 例如: data={ ‘newyork‘:{‘2001‘:51,‘2002‘:76}, ‘houston‘:{‘2001‘:49,‘2002‘:90}, } DataFrame(data)得到結果為: newyork houston 2001 51 49
2002 76 90
pandas中可以用query函數以類SQL語言執行查詢。query中可以直接使用列名。
Python — pandas