我的熊猫数据框看起来像这样:
ID | 地址 |
---|---|
1 | [{'city': 'MURFREESBORO', 'line': ['9999 Candy Cane Island'], 'postalCode': '39999', 'state': '56'}] |
2 | [{'city': 'LIKELAND', 'line': ['11111 WS 80RD ST'], 'postalCode': '71398', 'state': '99'}] |
3 | [{'city': 'CHASS', 'line': ['36 LONDON LN'], 'postalCode': '269235', 'state': '35'}] |
如何将此列转换为多个列以使其看起来像这样?
ID | 城市 | 线 | 邮政编码 | 状态 |
---|---|---|---|---|
1 | 默弗里斯伯勒 | 9999 拐杖糖岛 | 39999 | 56 |
2 | 莱克兰 | 11111 WS 80RD ST | 71398 | 99 |
3 | 查斯 | 36 伦敦 | 269235 | 35 |
我尝试了多种不同的方法:
df = pd.json_normalize(newdf['address'])
# AND
newdf['address'] = newdf['address'].apply(lambda x: "'" + str(x) + "'")
newdf['address'] = newdf['address'].apply(str).str.replace('[', '').str.replace(']', '')
构建 DataFrame 的数据:
{'id': [1, 2, 3],
'address': [[{'city': 'MURFREESBORO', 'line': ['9999 Candy Cane Island'],
'postalCode': '39999', 'state': '56'}],
[{'city': 'LIKELAND', 'line': ['11111 WS 80RD ST'],
'postalCode': '71398', 'state': '99'}],
[{'city': 'CHASS','line': ['36 LONDON LN'],
'postalCode': '269235', 'state': '35'}]]}