擅长:python、mysql、java
<p>如果您已经经历了隐藏真实数据的痛苦,那么让模拟数据也具有与真实数据相同的特性。你知道吗</p>
<p>假设你有这个JSON:</p>
<pre><code>json_data = [
{
"a": "A1",
"b": "B1",
"c": [
{
"a": "C111",
"c2": "C121",
"c3": ["C1131","C1132"]
}
]
},
{
"a": "A2",
"b": "B2",
"c": [
{
"a": "C211",
"c2": "C212",
"c3": ["C2131","C2132"]
},
{
"a": "C221",
"c2": "C222",
"c3": ["C2231"]
}
]
}
]
</code></pre>
<p>只需一行代码即可提取:</p>
<pre><code>pd.io.json.json_normalize(json_data, 'c', ['a', 'b'], record_prefix='data.')
</code></pre>
<p>结果:</p>
<pre><code> data.a data.c2 data.c3 a b
0 C111 C121 [C1131, C1132] A1 B1
1 C211 C212 [C2131, C2132] A2 B2
2 C221 C222 [C2231] A2 B2
</code></pre>
<p><code>record_prefix='data.'</code>就是<code>ValueError: Conflicting metadata name a, need distinguishing prefix</code>错误消息的意思。你知道吗</p>