使用 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中文网其他相关文章!