У меня есть простой pandas фрейм данных:
import pandas as pd
data = [['tom', 10], ['nick', 15], ['juli', 14]]
df = pd.DataFrame(data, columns = ['Name', 'Age'])
Если я выберу Имя из индекса строки 1, я получу простой строковый объект:
df.loc[1].Name
Out[9]: 'nick'
Но если я выбрав строку, содержащую Age == 15, я получаю объект, который, как мне кажется, не может привести к строковому объекту
df.loc[df.Age==15].Name
Out[11]:1 nick
Name: Name, dtype: object
type(df.loc[df.Age==15].Name)
Out[38]: pandas.core.series.Series
Хорошо, это серия, это круто, получите первый элемент:
df.loc[df.Age==15].Name[0]
KeyError: 0
Ну, это не сработало, давайте спросим фактический ключ:
df.loc[df.Age==15].Name[1]
Out[40]: 'nick'
Да! Это работает! ... но если бы я знал фактический ключ, я бы вообще не выполнил запрос!
Как мне получить строковое значение из этого поля имени, если я знаю возраст? В моем реальном случае я знаю, что Age уникальна.