Не удалось создать фрейм данных pandas из списка json из-за наличия двоеточия в одном из значений

#python #pandas

Вопрос:

Приведенный ниже код отлично работает с другими объектами списка, но здесь из-за наличия двоеточия imageURL он выдает ошибку. Я должен динамически загружать данные, не глядя на конкретную пару значений ключа. Пожалуйста, помогите.

 dt=[{'lineno': '3544', 'sku': 'B2039P015DP', 'status': 'Shipped', 'order_qty': '4', 'openQty': '0', 'wipQty': '0', 'shippedQty': '2', 'closedQty': '0', 'closed_date': '', 'returnedQty': '0', 'deliveredQty': '0', 'imageUrl': 'https://d2p3w.cloudfront.net/pub/media/catalog/product/b/2/b2039p010ds.jpg', 'itemName': 'Primo Brown Cube Box, 5Ply, (20"x10"x10"), Pack of 15', 'price': '1033.76000', 'udf1': None, 'udf2': None, 'udf3': None, 'udf4': None, 'udf5': None, 'internalLineNo': '1'}]
dummy = pd.read_json(json.dumps(dt),orient='records')
 

Ответ №1:

Просто используйте json.loads его для загрузки, а не pd.read_json . Так что с вашим вводом dt этот код работает нормально:

 dummy = pd.DataFrame(json.loads(json.dumps(dt)))
 

Комментарии:

1. Или, вы знаете, просто не делайте этого вообще… dummy = pd.DataFrame(dt)