У меня есть то, что кажется OrderdDict, содержащее OrderedDict в пределах подмножества того, что я называю «основным» OrderedDict. Я пытаюсь проанализировать этот объект на Pandas DataFrame. (Я использую Python 3, дистрибутив Anaconda.)Python: Анализ упорядоченного кода в Pandas Dataframe
Я искал и нашел несколько примеров о понимании таких структур данных, но структуры в примерах, похоже, не совпадают с моими.
Как вы можете видеть в нижеследующем примере, упорядоченные Dicts, о которых я забочусь, вложены в ключ, называемый «records» в «main» OrderedDict. Я хотел бы взять пример ниже:
od = OrderedDict([('totalSize', 3), ('done', True), ('records', [OrderedDict([('attributes', OrderedDict([('type', 'Cust'), ('url', '/example/url/foo/bar/123')])), ('Id', '4563456kjgfu4uyHHY3'), ('Phone', None), ('FirstName', 'Bill'), ('LastName', 'Bob'), ('Email', '[email protected]')]), OrderedDict([('attributes', OrderedDict([('type', 'Cust'), ('url', '/example/url/foo/bar/234')])), ('Id', 'KJ23jdkd889DKJD'), ('Phone', '(444) 444-4444'), ('FirstName', 'Amanda'), ('LastName', 'Smith'), ('Email', '[email protected]')]), OrderedDict([('attributes', OrderedDict([('type', 'Cust'), ('url', '/example/url/foo/bar/654')])), ('Id', '23kkjKJkj2323KJ33'), ('Phone', '(555) 555-5555'), ('FirstName', 'Julie'), ('LastName', 'jackson'), ('Email', '[email protected]')])])])
... и получить DataFrame с колонками 'Id', 'Телефон', 'FirstName', 'LastName' и 'Электронная почта'.
До сих пор я был в состоянии извлечь то, что я считаю список списков:
li = []
list1 = [(record['Id'], record['Phone'],record['FirstName'],record['LastName'])
for record in od['records']]
li.append(list1)
li[:]
Этот список стратегии списков, однако не включает возможность имен столбцов. Я хотел бы попросить вашу помощь сделать это последним шагом в Pandas DataFrame.
спасибо, что заранее.
Спасибо! Я попытался проголосовать, но у меня пока нет репутации. Я бы отметил, что решил, но решение требует ручного объявления списка идентификаторов столбца. Было бы идеально, чтобы иметь возможность динамически извлекать идентификаторы столбцов, не указывая их. Я знаю, что я не указывал это как требование, поэтому, если никто другой не предлагает решение для этого, я буду отмечать как решение. Еще раз спасибо. – gpanda
@gpanda Я добавил версию, которая не требует указания имен столбцов –
Блестящий, это очень помогает, спасибо. Для всех, кто пытается проанализировать данные, возвращенные просто-salesforce, это будет отличное решение. – gpanda