簡體   English   中英

計算絕對距離/加權移動平均值。 斯塔塔或 R

[英]compute absolute distance/weighted moving average. Stata or R

我想在一個變量(稱為“絕對距離”)中捕獲給定年份(用 var“id”標識;總共 50 個主題)之間的數字變量(稱為“v1”)距離的絕對值(標識為 var“duration”;總共 13 年)容易生病(經歷“事件”,由稱為“生病”的依賴/結果二進制變量捕獲;當受試者在給定年份經歷事件時編碼為 1 ,否則為 0)以及所有生病的受試者(之前經歷過該事件的受試者)的“v1”值。

先前生病的受試者的值是受試者在經歷事件時(受試者生病的年份)的“v1”值。 生病時“v1”的值是加權移動平均,其中最近生病的受試者與所有其他生病的受試者具有相同的權重。 因此,對於數據集中的每一年,我希望使用以下公式計算每個健康受試者的距離(“絕對距離”):

絕對距離公式

“生病”可以經歷不止一次,但為了簡單起見,讓我們關注一個我們感興趣的數據集,其中我們對第一次“生病”之前的時間感興趣(觀察。在第一個事件之后將被“右刪失”並從分析;數據將使用生存/持續時間技術進行分析)。

現在,當我們考慮到某些受試者在同一年經歷了該事件(生病)時,事情變得更加復雜(讓我們將這些確定為“關系”)。 “關系”有助於“之前生病的所有其他受試者的 v1 的平均值”與“這些關系的 v1 的平均值”。 例如,三個科目在 2000 年生病了。這些“關系”將有助於從 2001 年起“之前生病的所有其他科目的 v1 的平均值”以及這三個科目在 2000 年的 v1 的平均值。

我將感謝有關如何在 Stata 或 R 中計算它的評論。

對於在 excel 中計算此值的低效、容易出錯的手動解決方法,請參閱我的帖子: excel 解決方法

您可能不想從 zoo 包中查看 rollapply。 例如:

z <- 1:20
rollapply(z, 5, mean)

暫無
暫無

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

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