Извлечь указанное c значение из фрейма данных, если выполняется условие даты - PullRequest
0 голосов
/ 19 июня 2020

В следующем фрейме данных я хочу запустить код для проверки сегодняшней даты в столбце. D и return specifici c value из своего столбца A, т.е. для 19-06-2020 (сегодня) возвращает 7 из столбца A.

import pandas as pd
import datetime as dt

df = pd.DataFrame ([[2,3,4], [4,5,6], [7,5,6]], columns = ['A', 'B', 'C'])
df['D'] = pd.date_range(start = '17/06/2020', periods = len(df))

df

1 Ответ

0 голосов
/ 19 июня 2020

Используйте boolean indexing для сравнения сегодня и выбора первого совпадающего значения:

print (df.loc[df.D == pd.Timestamp('now').floor('d'), 'A'].iat[0])
7

Общее решение для выбора первого значения с возвращаемым значением по умолчанию, если первое значение не существует:

print (next(iter(df.loc[df.D == pd.Timestamp('now').floor('d'), 'A']),'no match value'))
7

#for test comapred A column
print (next(iter(df.loc[df.A == pd.Timestamp('now').floor('d'), 'A']),'no match value'))
no match value
...