一、iloc函數概述
iloc函數是Pandas中的常用函數之一。在Pandas中,一般有兩種方式,即loc和iloc,用來選擇數據集中的行和列。其中,iloc函數主要用于按位置選擇數據。iloc函數的參數可以是單個整數、整數范圍、布爾值數組或返回布爾值數組函數。
下面我們通過幾個小標題,來詳細闡述iloc函數的用法。
二、按整數位置選擇數據
iloc函數的第一個參數可以是整數,表示選擇數據集中的第幾行或第幾列。具體方法如下:
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
# 選擇第二行數據,返回Series類型數據
print(df.iloc[1])
# 選擇第三列數據,返回Series類型數據
print(df.iloc[:, 2])
# 選擇第二行第三列數據,返回數字類型數據
print(df.iloc[1, 2])
上面這段代碼首先創建了一個數據表,包含3行3列的數據。然后,我們分別用iloc函數選擇了第二行數據、第三列數據和第二行第三列數據。
三、按整數范圍選擇數據
iloc函數的第一個參數還可以是整數范圍,表示選擇數據集中的一段連續的行或列。具體方法如下:
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
# 選擇第1~2行數據,返回DataFrame類型數據
print(df.iloc[1:3, :])
# 選擇第1~2列數據,返回DataFrame類型數據
print(df.iloc[:, 1:3])
# 選擇第1~2行和第2~3列數據,返回DataFrame類型數據
print(df.iloc[1:3, 1:3])
上面這段代碼首先創建了一個數據表,包含3行3列的數據。然后,我們分別用iloc函數選擇了第1~2行數據、第1~2列數據和第1~2行和第2~3列數據。
四、按布爾值數組選擇數據
iloc函數的第一個參數還可以是布爾值數組,表示選擇數據集中的符合條件的行或列。具體方法如下:
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
# 選擇B列大于5的行,返回DataFrame類型數據
bool_arr = df.iloc[:, 1] > 5
print(df.iloc[bool_arr])
上面這段代碼首先創建了一個數據表,包含3行3列的數據。然后,我們用iloc函數選擇了B列大于5的行。
五、按返回布爾值數組函數選擇數據
iloc函數的第一個參數還可以是返回布爾值數組的函數,表示選擇數據集中符合條件的行或列。具體方法如下:
import pandas as pd
df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6], 'C': [7, 8, 9]})
# 定義一個返回布爾值數組的函數
def my_func(row):
return row['B'] > 5
# 選擇函數返回值為True的行,返回DataFrame類型數據
bool_arr = df.apply(my_func, axis=1)
print(df.iloc[bool_arr])
上面這段代碼首先創建了一個數據表,包含3行3列的數據。然后,我們定義了一個返回布爾值數組的函數,該函數用于按B列大于5的條件來選擇行。最后,我們用iloc函數選擇了根據my_func函數返回值為True的行。
六、總結
iloc函數是Pandas中常用的按位置選擇數據的函數。通過這篇文章的介紹,我們可以清楚地了解到iloc函數的用法,包括按整數位置選擇數據、按整數范圍選擇數據、按布爾值數組選擇數據、按返回布爾值數組函數選擇數據等。當我們需要對數據集進行按位置選擇時,iloc函數將會是一個十分有用的工具。