简体   繁体   中英

Split time series to find annual maximum from a data frame in Pandas

I have a time series dataset as follows where first column is year, second month, third date, and subsequent columns are time series data sets:

1995   1    1     0.0   1.929  23.015   1.429   0.806   0.177   0.027
1995   1    2   0.000   1.097  12.954   0.000   0.196   0.361   0.233
1995   1    3   0.000  11.391   0.228   0.004   2.134  11.190   0.028
1995   1    4   0.504   0.373   0.197   0.333   5.894   0.003   0.098
1995   1    5   0.027  20.957   0.115   0.208   0.000   0.000   0.104
1995   1    6   0.043   9.952   0.042   2.499   1.406   0.000   0.748
....   .    .   .....   .....   .....   .....   .....   .....   .....
2000   12   31  50.98   23.23   98.78   34.23   34.54   45.54   34.21

I have read it using:

pd.read_csv('D:/test.csv')

I want to read data columns and find annual maximum value from them. Any suggestion on how to group or split data to find annual maximum values for each variable would be helpful.

IIUC, given your sample dataframe df , you can read it with:

df = pd.read_csv('D:/test.csv', header=None)

and then groupby by column 0 (year) and get the maximum for each value:

g = df.groupby(0).max()

This returns:

      1  2      3       4       5      6      7      8      9
0                                                            
1995  1  6  0.504  20.957  23.015  2.499  5.894  11.19  0.748

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM