私はいくつかのゲージステーションの1950〜2015年の間の毎年の年間平均降雨量を抽出しようとしています。降雨量データセットは日々の測定値で構成されています。Rのグループ化されたデータの条件付き削除R
各ステーションの年間平均を計算する前に、データをフィルタリングして、毎月のデータが15日を超えないようにする必要があります。
これはどのようにRで実行できますか?
これは実施例としよう:私は「平均値からの平均」を取っているとして、しかし、これは間違った解決策につながる
result<-df %>%
group_by(id,year,month) %>%
summarise(No._of_days=n(),mean_month=mean(value))
result<-result[!(result$No._of_days<15),]
result<-result %>%
group_by(id,year) %>%
summarise(No._of_months=n(),mean_year=mean(mean_month))
:
id<-rep(c("Station_1","Station_2","Station_3"),length(1),each=1080)
year<-rep(c(1950:1952),length(1:3),each=360)
month <- rep(c(1:12),length(1:9),each=30)
day <- rep(c(1:30),length(1:108))
value<-runif(3240, min=0, max=10)
df<-data.frame(cbind(id,year,month,day,value))
私のようなものを試してみました。
ありがとうございました。
'data.frame(cbind(...)) 'の使用を中止してください。 'data.frame()'で十分です。 '?data.frame'を見てみましょう。 – Arun
あなたの迅速で正確な返答のために、Sathish、aichao、sebolus、NJBurgoに感謝します。すべてのソリューションが機能しますが、dplyrを使用するのが最も快適なので、私はaichaoを使用します。 データフレームを間違って定式化して申し訳ありません。ここにいるすべての人が正しく構造化する方法についてよくコメントしています。 –