首頁 >後端開發 >Python教學 >如何在 Pandas 中將分類資料轉換為數值索引?

如何在 Pandas 中將分類資料轉換為數值索引?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-28 11:00:30863瀏覽

How to Convert Categorical Data to Numerical Indices in Pandas?

Pandas:將類別轉換為數值索引

在Pandas 中,您可能會遇到需要轉換類別資料的情況,例如國家類別資料的情況,例如國家類別/地區、轉換為數字索引。雖然 pd.get_dummies 可以將類別轉換為 one-hot 編碼,但它可能並不總是最有效的解決方案。以下是有關如何將類別轉換為數字索引的分步指南:

第1 步:對列進行分類

首先,將列的類型更改為categorical :

<code class="python">df.cc = pd.Categorical(df.cc)</code>

這會將國家/地區列轉換為分類列,由pd.Categorical(column_name) 表示。

步驟2:為程式碼建立新欄位

接下來,建立一個新欄位來儲存數字索引:

<code class="python">df['code'] = df.cc.codes</code>

分類列的代碼屬性為每個類別分配唯一的整數索引。

範例:

考慮以下DataFrame:

   cc  temp
0  US  37.0
1  CA  12.0
2  US  35.0
3  AU  20.0

按照上述步驟操作後,您將擁有一個新的DataFrame:

   cc  temp  code
0  US  37.0     2
1  CA  12.0     1
2  US  35.0     2
3  AU  20.0     0
按照上述步驟操作後,您將擁有一個新的DataFrame:

其他選項:
  • 在不修改DataFrame 的情況下取得程式碼:
  • df.cc.astype('category') .codes
  • 建立分類列作為索引:
df2 = pd.DataFrame(df.temp); df2.index = pd.CategoricalIndex(df.cc)

以上是如何在 Pandas 中將分類資料轉換為數值索引?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn