我有一个WooCommerce订单的数据框。 在这个数据框中,我有一个订单id和行项目。 行项目是json项目列表(再次列出)、价格和数量:
[
{u'sku': u'100111', u'total_tax': u'1.11', u'product_id': 4089, u'price': 15.878505, u'tax_class': u'reduced-rate', u'variation_id': 6627, u'taxes': [{u'total': u'1.111495', u'subtotal': u'1.111495', u'id': 35}], u'name': u'prod2', u'meta_data': [{u'value': u'100501', u'id': 74675, u'key': u'SKU'}], u'subtotal_tax': u'1.11', u'total': u'15.88', u'subtotal': u'15.88', u'id': 9956, u'quantity': 1},
{u'sku': u'100222', u'total_tax': u'2.29', u'product_id': 4081, u'price': 32.700935, u'tax_class': u'reduced-rate', u'variation_id': 6632, u'taxes': [{u'total': u'2.289065', u'subtotal': u'2.289065', u'id': 35}], u'name': u'prod1', u'meta_data': [{u'value': u'100302', u'id': 74685, u'key': u'SKU'}], u'subtotal_tax': u'2.29', u'total': u'32.70', u'subtotal': u'32.70', u'id': 9957, u'quantity': 1}
]
我现在需要将列表中的所有项转换为dataframe中的列,还需要从这一行代码中生成n行(基于列表中列表的数量)。在
你们有什么好主意吗?在
谢谢! e
//编辑: 这是我的输入:
^{2}$我的预期产出是
id, sku
1234, 100111
1234, 100222
您需要将字典扁平化为一个新的数据帧。以下是一个有效的理解方法:
这假设“line_items”是一个包含字典列表的列。如果不是(如果是字符串),可以先使用
^{pr2}$另一种选择是使用
chain
ing:pandas.io.json.json_normalize
可以自动解包嵌套结构。下面是示例的代码。在输出是
^{pr2}$您可能需要为您的目的重新排列输出的列。在
相关问题 更多 >
编程相关推荐