JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,它基于JavaScript的一个子集,但是独立于语言,可以被多种编程语言读取。JSON的格式简洁、易于阅读和编写,同时也易于机器解析和生成。它通常用于网络应用之间的数据传输。
JSON的基本结构
JSON数据格式由键值对组成,数据以数组或对象的形式展现。数组是有序的,而对象(在JSON中也称为字典)是无序的。在JSON中,以下数据类型是合法的:
- 对象:由花括号
{}
包围,由一系列键值对组成,键和值之间用冒号:
分隔,键值对之间用逗号,
分隔。 - 数组:由方括号
[]
包围,可以包含任意数量的值,值可以是数字、字符串、对象、数组或其他JSON支持的数据类型。 - 字符串:必须用双引号
"
包围。 - 数字:整数或浮点数。
- 布尔值:
true
或false
。 - null:表示空值。
Pandas处理JSON数据
Pandas提供了read_json()
函数,可以方便地将JSON格式的数据读取到DataFrame中。如果JSON数据是字符串形式,也可以直接传入该函数进行处理。
读取JSON文件
假设你有一个名为sites.json
的文件,其内容如你所提供的示例,你可以使用以下代码读取该文件并创建一个DataFrame:
import pandas as pd
# 读取JSON文件
df = pd.read_json('sites.json')
# 打印DataFrame的内容
print(df.to_string())
直接处理JSON字符串
如果你有一个JSON格式的字符串,也可以直接将其传递给read_json()
函数:
import pandas as pd
# JSON字符串
json_str = '''
[
{
"id": "A001",
"name": "菜鸟教程",
"url": "www.runoob.com",
"likes": 61
},
{
"id": "A002",
"name": "Google",
"url": "www.google.com",
"likes": 124
},
{
"id": "A003",
"name": "淘宝",
"url": "www.taobao.com",
"likes": 45
}
]
'''
# 直接从JSON字符串读取数据到DataFrame
df = pd.read_json(json_str)
# 打印DataFrame的内容
print(df.to_string())