json_normalize
时间: 2023-12-09 07:06:38 浏览: 74
json_normalize是pandas库中的一个函数,用于将嵌套的JSON数据转换为平面表格形式。它可以将JSON数据中的每个嵌套层级展开为一列,并将每个嵌套层级的键作为列名。这个函数可以方便地将JSON数据转换为pandas DataFrame,以便进行数据分析和处理。
下面是一个简单的例子,假设我们有以下JSON数据:
```
{
"name": "John",
"age": 30,
"address": {
"city": "New York",
"state": "NY"
},
"phone_numbers": [
{
"type": "home",
"number": "555-1234"
},
{
"type": "work",
"number": "555-5678"
}
]
}
```
我们可以使用json_normalize将其转换为一个DataFrame:
```
import pandas as pd
import json
data = {
"name": "John",
"age": 30,
"address": {
"city": "New York",
"state": "NY"
},
"phone_numbers": [
{
"type": "home",
"number": "555-1234"
},
{
"type": "work",
"number": "555-5678"
}
]
}
df = pd.json_normalize(data)
print(df)
```
输出结果如下:
```
name age address.city address.state phone_numbers
0 John 30 New York NY NaN
1 NaN NaN NaN NaN {'type': 'home', 'number': '555-1234'}
2 NaN NaN NaN NaN {'type': 'work', 'number': '555-5678'}
```
可以看到,json_normalize将嵌套的JSON数据转换为了一个DataFrame,其中每个嵌套层级都展开为了一列,并将每个嵌套层级的键作为列名。需要注意的是,如果JSON数据中有数组,那么json_normalize会将数组中的每个元素展开为一行,并在每个元素的前面添加一个数字索引。
阅读全文