如何使用 Python Pandas 库将 JSON 文件读入 DataFrame?

JSON 代表 JavaScript Object Notation,它以键/值对的形式存储文本数据,这可以是人类可读的数据格式。这些 JSON 文件通常用于在网络上交换数据。JSON 对象用大括号 ({}) 表示。JSON 的每个键/值对都由逗号分隔。

JSON 数据看起来与 Python 字典非常相似,但 JSON 是一种数据格式,而字典是一种数据结构。要将 JSON 文件读入 Pandas DataFrame,我们在Pandas库中有read_json方法。下面的示例概述了我们如何将 JSON 文件读入 Pandas DataFrame。

示例

将本地 JSON 文件读入 Pandas DataFrame

#导入熊猫包
import pandas as pd

# 读取 JSON 文件
df = pd.read_json('E:\iris.json')

# 显示样本输出
df.sample(5)

解释

在上面的代码中,我们使用pd.read_json方法将本地 JSON 文件读入 df 变量,我们将 JSON 文件位置作为字符串传递给该方法。此方法会自动将 JSON 文件中的数据转换为 DataFrame。最初,我们将 pandas 包作为 pd 导入。最后,在最后一行中,我们将 DataFrame 中的 5 个样本行显示为输出。

输出结果

    sepalLength   sepalWidth   petalLength    petalWidth    species
149     5.9          3.0          5.1           1.8         virginica
90      5.5          2.6          4.4           1.2         versicolor
56      6.3          3.3          4.7           1.6        versicolor
38 4.4 3.0 1.3 0.2 setosa
85 6.0 3.4 4.5 1.6 versicolor

将鸢尾花 JSON 数据集/文件作为 read_json 方法的输入,该数据集有 5 列和 150 行数据。在这个输出块中,我们只显示了使用该方法的 5 行数据的样本。该方法从 DataFrame 随机返回数据。df.sample()

以同样的方式,我们可以通过在文件路径的位置提及远程 URL 来读取远程 JSON 数据。

示例

import pandas as pd

data = pd.read_json(
'http://universities.hipolabs.com/search?country=United+Kingdom')
print(data)

解释

在这个例子中,我们采用了一个公共 HTTP API,它以 JSON 格式保存数据。这里也使用 read_json 方法来读取这个远程 URL JSON 数据。

输出结果


网页姓名阿尔法 _two_ 代码州-省国家
0[abdn.ac.UK, Aberdeen.ac.uk][www.abdn.ac.uk/]阿伯丁大学GBNaNUnited Kingdom
1[aber.ac.uk][www.aber.ac.uk/]威尔士大学阿伯里斯特威斯分校GBNaNUnited Kingdom
2[abertay.ac.uk][www.abertay.ac.uk/]阿伯泰邓迪大学GBNaNUnited Kingdom
3[aiuniv.edu][www.aiuniv.edu/]美国洲际大学 - 伦敦GBNaNUnited Kingdom
4[aku.edu][www.aku.edu/]阿迦汗大学GBNaN英国

此输出包含来自 read_json 方法的 4 行 JSON 数据示例,这是来自公共 URL 的数据,它有 171 行和 6 列。