簡體   English   中英

R平均縱橫比計算(循環統計)

[英]R mean aspect calculation (circular statistics)

我有來自形成單個區域的DEM像素的外觀數據。 我想使用此數據計算每個多邊形的平均長寬比。 我希望將該函數應用於df的每一行,並將其存儲在“ Mean_Aspect”列中。

我的數據框如下所示: DF示例

到目前為止,如果我將粘貼的csv復制到其中,我到目前為止的代碼會計算出平均方面,但是我無法弄清楚如何循環/應用於所有內容。 “角度”中的值僅是示例。

data$Mean_Aspect <- 0
library(circular)
angles = c(200.072,204.037,198.591,193.151,192.779,187.503,198.549,196.675,199.618,191.083,187.242)
anglecir =  circular(angles, type="angles", units="degrees",modulo="2pi", template='geographics')
mean(anglecir)

任何幫助/建議表示贊賞!

如果度數列包含要計算的角度 ,則可以嘗試:

data$Mean_Aspect <- lapply(data$degrees, function(angles) mean(circular(angles, type="angles", units="degrees",modulo="2pi", template='geographics')))

我們可以使用sapply

data$Mean_Aspect <- sapply(data$Degrees, function(angles) 
   mean(circular(angles, type="angles", units="degrees",modulo="2pi", 
                template='geographics')))
data$Mean_Aspect
#[1] 129.184797   6.358874 243.757731 128.159000

數據

data <- data.frame(FID = 0:3, Degrees = I(list(c(120.53, 133, 854), 
          c(338.629, 331.991, 323.4, 133.2, 432), 
         c(251.114, 248.003, 232.1), c(121.992, 134.326))), 
      Mean_Aspect = 0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM