温度データ(dtT)と相対湿度(dtR)の2つのExcelデータがあります。各フレームは、39行(監視サイト)×64列(121日から181日までの61日間、「lat」、「lon」、および「county」)です。両方のシートは全く同じ順序です。私は、これらの2つのデータセットを使用して、毎日の各監視サイトの「熱指標」を計算し、同じ次元の別のデータフレームを埋めていきたいと考えています。R:ループを使用して異なるデータセットの2つの変数を使用して式を適用する
問題:ネストされたループを使用しようとしていますが、すべての値が0に戻ります。 「郡」列に単語が含まれているため、Rはすべての数字を文字として読み取っているため、計算を実行できません。 (**指定された列は、ここに混乱見えるかもしれませんが、私は一般的な戦略を探しています)
dtT <- read.csv("C:/Users/Desktop/Tavg3.csv")
dtR <- read.csv("C:/Users/Desktop/RHavg3.csv")
# Make a new data frame
hi = cbind(dtT, dtR)
# Add empty columns for heat index
hi[paste("hi",121:181,sep="")] = 0
# Loop to fill each hi cell using NOAA formula
for(i in 1:length(hi$lat)){
t <- hi[i, 3:63]
r <- hi[i, 64:124]
h <- hi[i, 125:185]
for(j in 1:length(t)){
h[i,j] = -42.379 + (2.04901523*t[j]) + (10.14333127*r[j]) - (0.22475541*t[j]*r[j]) -
((6.83783*10^-3)*(t[j]^2)) - ((5.481717*10^-2)*(r[j]^2)) + ((1.22874*10^3) - (t[j]^2)*r[j]) + ((8.5282*10^-4)*t[j]*(r[j]^2)) - ((1.99*10^-6)*(t[j]^2)*(r[j]^2))
}
}
hi[1:10, 130:140]
hi = hi[,c(1:2, 125:185]
「郡」の欄最小限の例を投稿しない場合は、質問の意味を理解するために、少なくとも 'dtT 'と' dtR 'の' str() '出力を十分に投稿してください。 –
私の謝罪 - 私は不必要な情報を除外していると思っていたが、私は今、私が全体像を与えていないことを知る。コメントありがとう。 – mEvans