首頁 >後端開發 >Python教學 >如何有效地將 Pandas DataFrame 字典列拆分為單獨的列?

如何有效地將 Pandas DataFrame 字典列拆分為單獨的列?

Linda Hamilton
Linda Hamilton原創
2024-12-16 21:10:14167瀏覽

How can I efficiently split a Pandas DataFrame column of dictionaries into separate columns?

使用Pandas 將一列字典拆分為單獨的欄位

在Pandas 中處理資料幀時,經常會遇到包含字典的列價值觀。將這些列拆分為單獨的列可以改善資料組織和可存取性。

考慮以下DataFrame:

Station ID     Pollutants
8809           {"a": "46", "b": "3", "c": "12"}
8810           {"a": "36", "b": "5", "c": "8"}
8811           {"b": "2", "c": "7"}
8812           {"c": "11"}
8813           {"a": "82", "c": "15"}

將“污染物”列拆分為單獨的“a”、“b”,和“c”列,您可以使用Pandas版本中引入的json_normalize函數0.23.0:

import pandas as pd

df2 = pd.json_normalize(df['Pollutants'])

這種方法非常高效,並且避免了使用可能成本高昂的apply函數。產生的 DataFrame df2 將如下所示:

Station ID     a      b       c
8809           46     3       12
8810           36     5       8
8811           NaN    2       7
8812           NaN    NaN     11
8813           82     NaN     15

請注意,產生的 DataFrame 包含缺少字典鍵的空值 (NaN)。要處理這些情況,您可以使用 fillna 方法將缺失值替換為預設值或套用自訂邏輯。

以上是如何有效地將 Pandas DataFrame 字典列拆分為單獨的列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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