将 JSON 数据加载到 Pandas DataFrame 中

DDD
发布: 2025-08-24 17:04:19
原创
190人浏览过

将 JSON 数据加载到 Pandas DataFrame 中

本文介绍了如何使用 Python 和 Pandas 库将 JSON 数据转换为 DataFrame。通过解析 JSON 字符串并利用 pd.DataFrame 函数,可以将 JSON 数据中的数据部分和列名部分结合起来,快速构建一个结构化的 DataFrame,方便后续的数据分析和处理。文章提供了详细的代码示例,帮助读者理解并应用该方法。

使用 Pandas 将 JSON 数据加载到 DataFrame

在数据处理过程中,经常需要将 json 格式的数据转换为更易于分析和操作的 dataframe 结构。pandas 提供了便捷的方法来实现这一转换。

步骤 1:导入必要的库

首先,需要导入 pandas 库来创建和操作 DataFrame,以及 json 库来解析 JSON 字符串。

import pandas as pd
import json
登录后复制

步骤 2:加载 JSON 数据

假设你有一个 JSON 字符串,例如:

jstr = """
{
    "data": [
        [
            "2023-01-01",
            50,
            50,
            82,
            0.0,
            4.32,
            0.1,
            0
        ],
        [
            "2023-01-02",
            298,
            315,
            550,
            0.0,
            4.920634920634921,
            0.13758389261744966,
            0
        ],
        [
            "2023-01-03",
            709,
            724,
            1051,
            0.0,
            3.064917127071823,
            0.0930888575458392,
            0
        ],
        [
            "2023-01-04",
            264,
            292,
            660,
            0.0,
            6.493150684931507,
            0.2803030303030303,
            0
        ],
        [
            "2023-01-05",
            503,
            523,
            882,
            0.0,
            3.7667304015296366,
            0.14314115308151093,
            0
        ],
        [
            "2023-01-06",
            423,
            437,
            735,
            0.0,
            3.5652173913043477,
            0.12056737588652482,
            0
        ],
        [
            "2023-01-07",
            97,
            102,
            146,
            0.0,
            3.5294117647058822,
            0.13402061855670103,
            0
        ],
        [
            "2023-01-08",
            70,
            71,
            169,
            0.0,
            6.52112676056338,
            0.1,
            0
        ],
        [
            "2023-01-09",
            301,
            337,
            721,
            0.0,
            5.9614243323442135,
            0.26578073089701,
            0
        ],
        [
            "2023-01-10",
            313,
            352,
            678,
            0.0,
            5.8522727272727275,
            0.2364217252396166,
            0
        ]
    ],
    "meta": {
        "columns": [
            "timestamp__to_date",
            "visitors",
            "sessions",
            "page_views",
            "goal_conversion_rate",
            "events_per_session",
            "returning_visitors_rate",
            "goal_conversions"
        ],
        "count": 181
    }
}
"""
登录后复制

使用 json.loads() 函数将 JSON 字符串解析为 Python 字典。

data = json.loads(jstr)
登录后复制

步骤 3:创建 DataFrame

MagicStudio
MagicStudio

图片处理必备效率神器!为你的图片提供神奇魔法

MagicStudio 102
查看详情 MagicStudio

利用 Pandas 的 pd.DataFrame() 函数,将解析后的 JSON 数据转换为 DataFrame。data['data'] 包含了数据,而 data['meta']['columns'] 包含了列名。

df = pd.DataFrame(data['data'], columns=data['meta']['columns'])
登录后复制

步骤 4:查看结果

打印 DataFrame,查看转换结果。

print(df)
登录后复制

输出结果如下:

  timestamp__to_date  visitors  sessions  page_views  goal_conversion_rate  events_per_session  returning_visitors_rate  goal_conversions
0         2023-01-01        50        50          82                   0.0            4.320000                 0.100000                 0
1         2023-01-02       298       315         550                   0.0            4.920635                 0.137584                 0
2         2023-01-03       709       724        1051                   0.0            3.064917                 0.093089                 0
3         2023-01-04       264       292         660                   0.0            6.493151                 0.280303                 0
4         2023-01-05       503       523         882                   0.0            3.766730                 0.143141                 0
5         2023-01-06       423       437         735                   0.0            3.565217                 0.120567                 0
6         2023-01-07        97       102         146                   0.0            3.529412                 0.134021                 0
7         2023-01-08        70        71         169                   0.0            6.521127                 0.100000                 0
8         2023-01-09       301       337         721                   0.0            5.961424                 0.265781                 0
9         2023-01-10       313       352         678                   0.0            5.852273                 0.236422                 0
登录后复制

注意事项

  • 确保 JSON 数据的格式正确,data 字段包含数据列表,meta.columns 字段包含列名列表。
  • 如果 JSON 数据来自文件,可以使用 json.load() 函数读取文件内容。
  • 可以根据实际需求对 DataFrame 进行进一步处理,例如数据清洗、转换等。

总结

使用 Pandas 将 JSON 数据加载到 DataFrame 是一种高效且常用的数据处理方法。通过简单的几行代码,就可以将复杂的 JSON 数据转换为结构化的 DataFrame,方便后续的数据分析和挖掘。

以上就是将 JSON 数据加载到 Pandas DataFrame 中的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号