<p>您可以使用DatetimeIndex创建时间序列,对于date by maximum <code>NO</code>使用<a href="http://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.Series.idxmax.html" rel="nofollow noreferrer">^{<cd2>}</a>,对于maximum value使用<code>max</code>:</p>
<pre><code>s = df.set_index('Date')['NO2']
print (s.idxmax())
2017-11-24 23:00:00
print (s.max())
0.038
</code></pre>
<p>如果需要每天的最长日期:</p>
<pre><code>print (df)
Date Location NO2
0 2017-11-24 23:00:00 toronto 0.038
1 2017-11-24 22:00:00 toronto 0.031
2 2017-11-24 21:00:00 toronto 0.025
3 2017-11-25 20:00:00 toronto 0.033
4 2017-11-25 19:00:00 toronto 0.026
5 2017-11-26 18:00:00 toronto 0.021
6 2017-11-26 17:00:00 toronto 0.017
df1 = df.set_index('Date').groupby(pd.Grouper(freq='24H'))['NO2'].idxmax().reset_index()
print (df1)
Date NO2
0 2017-11-24 2017-11-24 23:00:00
1 2017-11-25 2017-11-25 20:00:00
2 2017-11-26 2017-11-26 18:00:00
df2 = (df.set_index('Date')
.groupby(pd.Grouper(freq='24H'))['NO2']
.agg([('maxdate','idxmax'),('maxval','max')]))
print (df2)
maxdate maxval
Date
2017-11-24 2017-11-24 23:00:00 0.038
2017-11-25 2017-11-25 20:00:00 0.033
2017-11-26 2017-11-26 18:00:00 0.021
</code></pre>
<p>或者如果需要最长时间:</p>
<pre><code>print (df)
Date Location NO2
0 2017-11-24 23:00:00 toronto 0.038
1 2017-11-24 22:00:00 toronto 0.031
2 2017-11-24 21:00:00 toronto 0.025
3 2017-11-25 20:00:00 toronto 0.033
4 2017-11-25 21:00:00 toronto 0.026
5 2017-11-26 21:00:00 toronto 0.021
6 2017-11-26 22:00:00 toronto 0.017
s = (df.groupby(df['Date'].dt.time)['NO2'].mean())
print (s)
Date
20:00:00 0.033
21:00:00 0.024
22:00:00 0.024
23:00:00 0.038
Name: NO2, dtype: float64
print (s.idxmax())
23:00:00
print (s.max())
0.038
</code></pre>