📜  将 JSON 字符串加载到 Pandas DataFrame 中(1)

📅  最后修改于: 2023-12-03 15:25:14.087000             🧑  作者: Mango

将 JSON 字符串加载到 Pandas DataFrame 中

Pandas 是一个在 Python 中非常流行的数据处理库,它可以帮助我们轻松地处理各种数据格式。其中,将 JSON 字符串加载到 Pandas DataFrame 中是一个常见的任务。下面我们就来介绍一下如何实现。

示例 JSON 字符串

我们先来看一个示例的 JSON 字符串,它表示了一些人的基本信息和工作经历:

{
    "people": [
        {
            "name": "John",
            "age": 25,
            "position": "software engineer",
            "companies": [
                {
                    "name": "ABC Corp.",
                    "duration": "2 years"
                },
                {
                    "name": "XYZ LLC",
                    "duration": "1 year"
                }
            ]
        },
        {
            "name": "Alice",
            "age": 30,
            "position": "data analyst",
            "companies": [
                {
                    "name": "DEF Inc.",
                    "duration": "3 years"
                }
            ]
        }
    ]
}

我们要将这个 JSON 字符串加载到 Pandas DataFrame 中,可以采用以下步骤:

步骤一:导入 Pandas 库

在 Python 中导入 Pandas 库,通常这样写:

import pandas as pd
步骤二:将 JSON 字符串转换为 Python 对象

使用 Python 内置的 json 库将 JSON 字符串转换为 Python 对象,通常这样写:

import json

json_str = """{
    "people": [
        {
            "name": "John",
            "age": 25,
            "position": "software engineer",
            "companies": [
                {
                    "name": "ABC Corp.",
                    "duration": "2 years"
                },
                {
                    "name": "XYZ LLC",
                    "duration": "1 year"
                }
            ]
        },
        {
            "name": "Alice",
            "age": 30,
            "position": "data analyst",
            "companies": [
                {
                    "name": "DEF Inc.",
                    "duration": "3 years"
                }
            ]
        }
    ]
}"""

data = json.loads(json_str)
步骤三:将 Python 对象转换为 Pandas DataFrame

使用 Pandas 的 DataFrame 函数将 Python 对象转换为 Pandas DataFrame,通常这样写:

df = pd.DataFrame(data['people'])

这样就可以将 JSON 字符串加载到 Pandas DataFrame 中了。最后我们来验证一下是否成功:

print(df)

输出:

    name  age          position                                          companies
0   John   25  software engineer  [{'name': 'ABC Corp.', 'duration': '2 years'},...
1  Alice   30     data analyst          [{'name': 'DEF Inc.', 'duration': '3 years'}]

以上就是将 JSON 字符串加载到 Pandas DataFrame 中的示例。