1

次の内容の配列があります。

> head(MEAN)
1901DJF     1901JJA     1901MAM     1901SON     1902DJF     1902JJA 
-0.45451556 -0.72922229 -0.17669396 -1.12095590 -0.86523850 -0.04031273 

これは、1901 年から 2009 年までの季節平均値の時系列である必要があります。問題は、生成された列の見出しが厳密にアルファベット順に並べられていることです。ただし、季節に関してはあまり意味がありません。たとえば、JJA (6 月、7 月、8 月) が MAM (3 月、4 月、5 月) をリードしています。

配列の各 MAM および JJA エントリを切り替えるにはどうすればよいですか?

PS: MEAN は data.frame pdsi に tapply を適用して生成されます

> head(pdsi)
    date      scPDSI month seas seasyear
1 1901-01-01 -0.10881074   Jan  DJF  1901DJF
2 1901-02-01 -0.22287750   Feb  DJF  1901DJF
3 1901-03-01 -0.12233192   Mär  MAM  1901MAM
4 1901-04-01 -0.04440915   Apr  MAM  1901MAM
5 1901-05-01 -0.36334082   Mai  MAM  1901MAM
6 1901-06-01 -0.52079030   Jun  JJA  1901JJA
>
> MEAN <- tapply(pdsi$scPDSI, ts.pdsi$seasyear, mean, na.rm = T)

季節平均を計算するためのよりエレガントな方法も知られているかもしれません...

4

2 に答える 2