pandas基礎學習筆記二

2021-10-05 09:45:25 字數 2483 閱讀 2745

二、多級索引

三、索引設定

3. set_index和reset_index

4. rename_axis和rename

四、常用索引型函式

五、重複元素處理

六、抽樣函式

第2章 索引.ipynb

寫在前面的,按照教程中的內容都在電腦上敲了一遍**,但還是感覺雲裡霧裡的。知識點很多,也有很多經驗的傳授,回過頭來將教程中的內容重新梳理了一遍,就將梳理的內容先打個卡吧,後面還得繼續花時間研究學習呢。

最常用的索引方法可能就是這三類,其中iloc表示位置索引,loc表示標籤索引,也具有很大的便利性,各有特點

(a)loc方法

1)單行索引:

2) 多行索引:

(注意:所有在loc中使用的切片全部包含右端點!這是因為如果作為pandas的使用者,那麼肯定不太關心最後乙個標籤再往後一位是什麼,但是如果是左閉右開,那麼就很麻煩,先要知道再後面一列的名字是什麼,非常不方便,因此pandas中將loc設計為左右全閉)

3) 單列索引:

4) 多列索引:

5) 聯合索引:

6) 函式式索引:

7) 布林索引:

小節:本質上說,loc中能傳入的只有布林列表和索引子集構成的列表,只要把握這個原則就很容易理解上面那些操作

(b)iloc方法(注意與loc不同,切片右端點不包含)

1)單行索引:

2) 多行索引:

3) 單列索引:

4) 多列索引:

5) 混合索引:

6) 函式式索引:

(c) 操作符

series的操作

單元素索引:

多行索引:

函式式索引:

布林索引:

【注意】如果不想陷入困境,請不要在行索引為浮點時使用操作符,因為在series中的浮點切片並不是進行位置比較,而是值比較,非常特殊

dataframe的操作

單行索引:

多行索引:

單列索引:

多列索引:

5)函式式索引:

布林索引:

小節:一般來說,操作符常用於列選擇或布林選擇,盡量避免行的選擇

(1)布林符號:』&』,』|』,』~』:分別代表和and,或or,取反not

(2) isin方法

當只需要取乙個元素時,at和iat方法能夠提供更快的實現:

此處介紹並不是說只能在單級索引中使用區間索引,只是作為一種特殊型別的索引方式,在此處先行介紹

(1)利用interval_range方法

(2)利用cut將數值列轉為區間為元素的分類變數,例如統計數學成績的區間情況:

(3)區間索引的選取

如果想要選取某個區間,先要把分類變數轉為區間變數,再使用overlap方法:

(1)通過from_tuple或from_arrays

① 直接建立元組

② 利用zip建立元組

③ 通過array建立

(2)通過from_product

(3)指定df中的列建立(set_index方法)

(1)一般切片

(2)第一類特殊情況:由元組構成列表

(3)第二類特殊情況:由列表構成元組

索引slice可以與loc一起完成切片操作,主要有兩種用法

(1)loc[idx[,]]型

第乙個星號表示行,第二個表示列,且使用布林索引時,需要索引對齊

(2)loc[idx[,],idx[,]]型

這裡與上面的區別在於

(a)中的loc是沒有逗號隔開的,但(b)是用逗號隔開,前面乙個idx表示行索引,後面乙個idx為列索引

(1)swaplevel方法(兩層交換)

(2)reorder_levels方法(多層交換)

index_col是read_csv中的乙個引數,而不是某乙個方法:

reindex是指重新索引,它的重要特性在於索引對齊,很多時候用於重新排序

先介紹set_index:從字面意思看,就是將某些列作為索引

使用表內列作為索引:

rename_axis是針對多級索引的方法,作用是修改某一層的索引名,而不是索引標籤

where函式

mask函式

query函式

query函式中的布林表示式中,下面的符號都是合法的:行列索引名、字串、and/not/or/&/|/~/not in/in/==/!=、四則運算符

duplicated方法

該方法返回了是否重複的布林列表

drop_duplicates方法

從名字上看出為剔除重複項,這在後面章節中的分組操作中可能是有用的.

這裡的抽樣函式指的就是sample函式

(a)n為樣本量

(b)frac為抽樣比

(c)replace為是否放回

(d)axis為抽樣維度,預設為0,即抽行

(e)weights為樣本權重,自動歸一化

教程後的習題,見下回分解……

Pandas基礎學習筆記

python data analysis library 或 pandas 是基於numpy 的一種工具,該工具是為了解決資料分析任務而建立的。pandas 納入了大量庫和一些標準的資料模型,提供了高效地操作大型資料集所需的工具。pandas提供了大量能使我們快速便捷地處理資料的函式和方法 impo...

Pandas學習筆記(二)

注意講述如何獲取乙個dataframe的某些行和某些列 注意value count 0方法,可以利用這個函式獲知某一列的各個取值的個數 主要講述如何按照人為設定的條件去選取dataframe的部分行和部分列。示例語句 is noise complaints complaint type noise ...

學習筆記 Pandas(二)

選擇資料 1 loc 通過行和列的名字來獲取值 注意 iloc使用索引定位時,會按照索引規則取值,如 1 5 會取出1,2,3,4這4個值 loc按照label標籤取值,如 a c 則a,b,c都取到 3 at 通過行列標籤獲得指定值 獲得單個資料 4 iat 通過行列標籤的整數索引來選取指定值 5...