Используйте pandas фрейм данных в качестве словаря в Python - PullRequest
0 голосов
/ 12 марта 2020

Я хочу использовать pandas фрейм данных в качестве словаря. (Я просто начинающий Python -программист, поэтому, вероятно, основной вопрос c)

Dictionary-dataframe:
Name     Age
Tom      45
Sam      87
Vif      23
Sep      65
Pol      71

Хочу, чтобы я хотел, это следующее: Если df ['Name'] == Сэм вернуть df ['Age'], поэтому в этом случае, если я позвоню Сэму, я хочу видеть 87 в выводе.

Код внизу, конечно, неверен, но это то, что я хочу видеть в выводе .

print(df['Name'] == Sam)

Output: 87

Какой-то код для df:

 import pandas as pd
 df = pd.DataFrame({'Name':['Tom', 'Sam', 'Vif', 'Sep', 'Pol'], 'Age':[45,87,23,65,71]})

1 Ответ

2 голосов
/ 12 марта 2020

Попробуйте использовать следующую функцию:

Вы просто вводите имя в функцию, и оно вытаскивает значение для вас. Убедитесь, что он заключен в кавычки.

def extractValue(i):
    return df[df.Name == i].iloc[0].Age

extractValue('Tom')

вывод:

45

df[df.Name == str(i)] предназначен для фильтрации по имени, iloc[0] выбирает первую строку и .Age выбирает столбец.

...