Как я могу найти значения, используя отметку времени в Python Dataframe - PullRequest
0 голосов
/ 14 марта 2019

Я пытаюсь найти значение, используя метку времени, как в данных.

    date               foo  bar
2019-01-26 22:22:12     1   100 
2018-11-07 13:12:26     1   100 
2019-01-20 06:30:39     1   100 
2018-11-05 21:21:29     0   80  
2018-11-06 09:01:39     0   100 

когда я использую код, Series его не поддерживает.

tmp = df [df.date.day == 20]

так что я использую цикл, который читал каждую строку и разбирал данные.

for i in range(len(df)):
    if df.date[i].day == 20:
               .
               .
               .

но я думаю, что это слишком долго, чтобы закончить все мои данные.

Есть ли способ найти значение, используя временную метку?

1 Ответ

1 голос
/ 14 марта 2019

Можно ли уточнить ваш вопрос дальше? Если я правильно понимаю, вы загружаете свои данные в пандас. После загрузки данных вы хотите отфильтровать их по значению дня. В этом случае один из вариантов будет следующим.

import pandas as pd

# Create basic dataframe

df = pd.DataFrame([{'date' : '2019-01-26 22:22:12','foo': 1,'bar':   100 },
{'date' : '2018-11-07 13:12:26','foo': 1,'bar':   100},
{'date' : '2019-01-20 06:30:39','foo': 1,'bar':   100},
{'date' : '2018-11-05 21:21:29','foo': 0,'bar':   80},
{'date' : '2018-11-06 09:01:39','foo': 0,'bar':100 }])

print(df)
print(df.dtypes)

# Parse date column
df['date'] = pd.to_datetime(df['date'])
print(df)
print(df.dtypes)

df['date_day'] = df['date'].dt.day

# Select based on day
print(df[df['date_day'] == 20])

Если вы сможете уточнить свой вопрос более подробно, у вас должна быть возможность представить вам более конкретный пример. Пожалуйста, также примите во внимание, что некоторые шаги в приведенном выше примере могут быть объединены ... (часть показа опции).

Более подробную информацию о работе с датами можно найти (среди прочих) в следующих ресурсах:

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...