Filtering Python Dataframe by Minutes

Hi Developer Community!

I have filtered my minute time series data frame by specific hours and minutes. The first Loop filters for 11:30 the second for 9:30. Lastly, I concatenated them next to each other.

Is there a way to do the same procedure without using an extra (second) loop? I would like to add more time and hour filters.

Thank you 1662982924131.png

Best Answer

  • Jirapongse
    Jirapongse ✭✭✭✭✭
    Answer ✓

    @levente.letenyei

    Yes, it is feasible to do it in one loop.

    The code looks like this:

    for i in range(len(majors_list)):
        temp = df_fixing[i][(df_fixing[i].index.hour==11) & (df_fixing[i].index.minute==30)]
        temp.index = temp.index.date
        df_fixing[i] = df_fixing[i][(df_fixing[i].index.hour==9) & (df_fixing[i].index.minute==30)]
        df_fixing[i].index = df_fixing[i].index.date    
        df_fixing[i] = pd.concat([df_fixing[i], temp], axis=1)

Answers