Как получить максимальное значение буквенно-цифровой строки в столбце? - PullRequest
0 голосов
/ 09 февраля 2019

У меня есть df, который выглядит следующим образом:

ID:

20190126T153450495Ztest1@test1.com
20190126T155922394Ztest2@test2.com
20190126T164741292Ztest3@test3.com
20190126T160108969Ztest4@test4.com
20190205T000624869Ztest5@test5.com

Как мне получить максимальное значение в столбце ID просто на основе даты-времени?

Максимальное значение в этом случае будет:

20190205T000624869Ztest5@test5.com

Если это поможет, dtype для этого столбца будет object

1 Ответ

0 голосов
/ 09 февраля 2019

Получить первые 18 значения, преобразовать в datetime с и получить индекс максимального значения, последний выбор по at или loc:

idx = pd.to_datetime(df['ID'].str[:18], format='%Y%m%dT%H%M%S%f').idxmax()

a = df.at[idx, 'ID']
#similar
#a = df.loc[idx, 'ID']
print (a)
20190205T000624869Ztest5@test5.com

Другойрешение с argsort:

idx = df['ID'].str[:18].argsort().idxmax()

a = df.at[idx, 'ID']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...