0

関数は、ddply の日付フィールドの特定の月/年の組み合わせにのみ適用できますか? 月/年を指定して、(他の関数の中でも)平均を計算したい。

monthlySummary <- ddply(tempData, .(Date, SiteID, SubstrateID), summarize, monthlyMean=mean(Temp_C))
4

1 に答える 1

3

「特定の月/年の組み合わせのみ」の意味がわからないので、おそらくsubsetあなたが望むものですが、月ごとの要約を求めているのではないかと思いました。したがって、Date がクラス Date のフィールドであると仮定すると、次のようになります。

monthlySummary <- ddply(tempData, .(format(Date, "%m" ),
                        summarize, monthlyMean=mean(Temp_C))

Date クラス変数でない場合は、1 つにする必要があります。

tempData$Date2 <- as.Date(tempData$Date, "%d/%m/%Y") # or your format

また、月別だけでなく、サイト別、基板別も必要な場合は、次のようにします。

monthlySummary <- ddply(tempData,
                  .( format(Date, "%m" ), SiteID, SubstrateID), 
                   summarize, monthlyMean=mean(Temp_C))

その他の日付集計オプションにformat.POSIXt は、package:lubridate の関数と、package:zoo でサポートされている「yearmon」クラスが含まれます。上記の例では、任意の年の 1 月に発生するすべてのイベントがまとめられます。年と月の区別を維持したい場合は、それを format-string: に含めるだけで済みますformat(Date, "%m-%Y")

于 2013-08-08T00:51:17.630 に答える