Как найти максимальное значение в столбце и вернуть это имя из другого столбца

#python-3.x #pandas #dataframe

#python-3.x #pandas #фрейм данных

Вопрос:

Я хочу найти здание с максимальным количеством этажей и вернуть название этого здания.

Я использую:

dframe.loc[dframe[15].idxmax()] и я получаю эту ошибку: AttributeError: 'str' object has no attribute 'loc'

Я также получаю TypeError: reduction operation 'argmax' not allowed for this dtype

Количество этажей указано в столбце 15, а название здания — в столбце 2. Любое указание о том, как подойти к этой проблеме, полезно. Спасибо!

Ожидаемым результатом будет строка с именем здания в столбце 2, где максимальное значение находится в столбце 15

Пример данных

 0   1   2   3   4   5   6   7   8   9   ... 32  33  34  35  36  37  38  39  40  

41
42  56  2018    HILTON SEATTLE  NonResidential  7802920020  1301 6TH AVE    SEATTLE WA  98101   47.60946    ... NaN 2689945 9178092 62538   6253815 0   356.6   2.8 Compliant   No Issue
43  57  2018    5TH amp; PINE  NonResidential  1975700200  1513 5TH AVE    SEATTLE WA  98101   47.6113 ... 493 2671369 9114711 0   0   0   24.3    0.1 Compliant   No Issue
44  58  2018    CENTURY SQUARE RETAIL   NonResidential  1975700365  1525 4TH AVE    SEATTLE WA  98101   47.61076    ... NaN 195653  667569  3756    375626  0   21.7    0.4 Compliant   No Issue
46  60  2018    MANN BUILDING/WILD GINGER/TRIPLE DOOR   NonResidential  1975700525  1401 3RD AVE    SEATTLE WA  98101   47.60886    ... 5459    1338469 4566856 110816
  

Комментарии:

1. Пожалуйста, покажите нам код, который вы пробовали

2. Пожалуйста, предоставьте образец вашего фрейма данных и ожидаемый результат.

3. Можете ли вы отредактировать исходные данные, чтобы они выглядели более отформатированными.

4. Я сам ответил на вопрос. Спасибо за весь ваш вклад!

Ответ №1:

ввод: dframe[14].dtype вывод: dtype(‘O’) ввод: dframe[14].astype(int)

ввод: dframe[14].dtype вывод: dtype(‘int64’)

ввод: print(dframe.loc[dframe[14].idxmax()][2])