от
У меня есть данные, сохраненные в CSV. Я запрашиваю эти данные с помощью Python и превращаю их в Pandas DataFrame. У меня есть столбец с именем team_members в моем фрейме данных. В нем есть словарь значений. Столбец выглядит так при вызове:
dt.team_members[1]
Выход:
"[{'name': 'LearnFromScratch', 'tier': 'novice tier'}, {'name': 'Scratch', 'tier': 'novice tier'}]"
Я пытался увидеть это объяснение и другие подобные: Разделение нескольких словарей в столбце панд Но они не работают Я хочу получить столбец с именем name с именами членов команды, а другой - с уровнем каждого участника. Вы можете мне помочь? Спасибо!!              

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.

3 Ответы

0 голосов
от
Я предполагаю, что вывод
dt.team_members[1]
является списком. Если это так, вы можете напрямую передать этот список, чтобы создать фрейм данных, например:
pd.DataFrame(dt.team_members[1])
    
0 голосов
от
Вы можете извлечь имя, зацикливая его
list(map(lambda x: x.get("name"), dt.team_members[1]))
если вам нужен новый фрейм данных: затем следуйте ответу @vivek:
pd.DataFrame(dt.team_members[1])
    
0 голосов
от
Вы можете попробовать это
    list = dt.team_member[1]
    li = []
    for x in range(len(list)):
       t = {list[x]['name']:list[x]['tier']}
       li.append(t)
    print(li)
Выход -
    [{'LearnFromScratch': 'novice tier'}, {'Scratch': 'novice tier'}]
    
Добро пожаловать на сайт ByNets, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...