在 Pandas Dataframe 中選擇多列

Manav Narula 2023年1月30日
  1. 使用 __getitem__ 語法([])選擇多列
  2. 在 Pandas 中使用 iloc()loc() 方法選擇多列
在 Pandas Dataframe 中選擇多列

在從 Pandas DataFrame 中提取多列資料時,我們可能會遇到一些問題,這主要是因為他們把 Dataframe 當作一個二維陣列。要從 DataFrame 中選擇多列資料,我們可以使用基本的索引方法,將列名列表傳遞給 __getitem__ 語法([]),或者使用 Pandas 庫提供的 iloc()loc() 方法。在本教程中,我們將從以下 DataFrame 中選擇多列。

示例 DataFrame:

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])

print(df)

輸出:

          a         b         c         d
0  0.255086  0.282203  0.342223  0.263599
1  0.744271  0.591687  0.861554  0.871859
2  0.420066  0.713664  0.770193  0.207427
3  0.014447  0.352515  0.535801  0.119759

使用 __getitem__ 語法([])選擇多列

通過將要提取的列名儲存在一個列表中,然後傳遞給 [],我們可以從 DataFrame 中選擇多個列。下面的程式碼將解釋我們如何從之前顯示的 DataFrame 中選擇列 ac

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])

print(df[["a", "c"]])

輸出:

          a         c
0  0.255086  0.342223
1  0.744271  0.861554
2  0.420066  0.770193
3  0.014447  0.535801

在 Pandas 中使用 iloc()loc() 方法選擇多列

我們還可以使用 iloc()loc() 方法來選擇多列。

當我們要使用列索引來提取它們時,我們可以使用 iloc(),如下例所示。

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])
print(df.iloc[:, [0, 2]])

輸出:

          a         c
0  0.255086  0.342223
1  0.744271  0.861554
2  0.420066  0.770193
3  0.014447  0.535801

同樣,當我們想使用列名來選擇列時,我們可以使用 loc(),如下圖所示。

import pandas as pd
import numpy as np

df = pd.DataFrame(np.random.rand(4, 4), columns=["a", "b", "c", "d"])

print(df.loc[:, ["a", "c"]])

輸出:

          a         c
0  0.255086  0.342223
1  0.744271  0.861554
2  0.420066  0.770193
3  0.014447  0.535801
作者: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

相關文章 - Pandas DataFrame