Преобразуйте столбец типа серии в другой фрейм данных

0

Вопрос

У меня есть API rest, который возвращает мне некоторые данные, в том числе некоторые в формате ссылок, поэтому я вызываю эту ссылку и сохраняю все это во фрейме данных, но мне нужно удалить некоторые значения из этих списков и объединить с фреймом данных, кто-нибудь знает способ сделать это?

 response = requests.get(url,auth=(usr,psw),headers=headers)
 df = pd.DataFrame(response.json()['result']) 
 def get_data_from_link (data):
 return requests.get(data['link'],auth=(usr,psw),headers=headers).json()

 df['assignment_group_response']=df['assignment_group'].apply(get_data_from_link)

столбец, который мне нужно преобразовать

0      {'result': {'attested_date': '', 'skip_sync': ...
1      {'result': {'attested_date': '', 'skip_sync': ...
2      {'result': {'attested_date': '', 'skip_sync': ...
api dataframe pandas python
2021-11-23 22:30:13
1

Лучший ответ

0

Начальный кадр данных после получения ваших данных по ссылке:

    assignment_group_response
0   {'name': 'abc', 'extra': {'value': 123}}
1   {'name': 'def', 'extra': {'value': 456}}
2   {'name': 'xyz', 'extra': {'value': 789}}

Теперь я создам новые столбцы и получу значения из вложенного словаря

df["name"] = df["assignment_group_response"].apply(lambda x: x["name"])
df["extra"] = df["assignment_group_response"].apply(lambda x: x["extra"])
df["value"] = df["assignment_group_response"].apply(lambda x: x["extra"]["value"])

После добавления столбцов фрейм данных будет выглядеть следующим образом:

                   assignment_group_response   name         extra   value
0   {'name': 'abc', 'extra': {'value': 123}}    abc {'value': 123}  123
1   {'name': 'def', 'extra': {'value': 456}}    def {'value': 456}  456
2   {'name': 'xyz', 'extra': {'value': 789}}    xyz {'value': 789}  789

2021-11-25 09:11:19

На других языках

Эта страница на других языках

Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................