如何在熊猫数据框中选择一组值(具有多个行条件的多个列)

时间:2019-11-25 18:42:49

标签: python-3.x pandas

我有一个很大的ass csv文件,如下所示,我使用pandas作为数据框打开了它。我想从不同日期集的多列中提取数据。

我想从特定的日期和小时中选择最后3列的值。我尝试和谷歌搜索的切片选项是针对单列的。

            date  heure PM10 NO2  O3

  0  01/01/2016      1   27  22  36

  1  01/01/2016      2   25  29  27

  2  01/01/2016      3   26  47  10

  3  01/01/2016      4   16  40  13

  4  01/01/2016      5   15  34  13

  5  02/01/2016      1   15  34  13

  6  02/01/2016      2   15  34  13

目标输出-将数据从特定数据和小时中获取到另一个数据。

  3  01/01/2016      4   16  

  4  01/01/2016      5   15  

谢谢。数据集显然比4号要大。

1 个答案:

答案 0 :(得分:0)

您可以这样做:

df_selected = df[(df.date >= "01/01/2016") & 
                 (df['hour']>=4)            &
                 (df.date < "02/01/2016")  &
                 (df['hour']<6)            
                ].iloc[:,:3] #first three columns

或者,对于列选择,您可以使用.loc[:,['name', 'of', 'columns']]或最后n列.iloc[:,-n:]。 注意日期,因为我不确定使用“英语”日期会发生什么,也许您必须使用df['date'] = pd.to_datetime(df.date)来更改日期。