HT إنشاء متجه جديد في إطار البيانات الذي يأخذ ارتباط المتجهات الحالية

StackOverflow https://stackoverflow.com/questions/2467019

  •  20-09-2019
  •  | 
  •  

سؤال

لديّ سلسلة زمنية من فهسين ، حيث يمثل كل صف سعر الإغلاق في نفس اليوم. أرغب في الذهاب إلى الصف 30 والاطلاع على مدار الثلاثين يومًا الماضية وحساب ارتباط بيرسون. ثم تخزين هذه القيمة في ناقل جديد. ثم ، كرر الحساب للسلسلة الزمنية بأكملها.

إنها مهمة تافهة في Excel ، لذلك أنا مقتنع أنه يمكن القيام به في R. لا أعرف طريقة استخدامها.

هل كانت مفيدة؟

المحلول

هناك العديد من الطرق للقيام بذلك (كما هو الحال مع كل شيء في R). أوصي دائمًا باستخدام سلسلة زمنية عند العمل مع بيانات السلاسل الزمنية.

ال zoo من المحتمل أن تكون الحزمة هي الحزمة الزمنية الأكثر شعبية (على الرغم من أنه يمكنك أيضًا النظر إلى الآخرين مثل XTs و TimeSeries و ITS ، FTS):

library(zoo)
z <- zoo(data.frame(a=1:50, b=3:52), as.Date(1:50))
rollapply(z, 30, cor, by.column=F, align = "right")

يمكنك أيضًا العثور على chart.RollingCorrelation وظيفة في PerformanceAnalytics حزمة مفيدة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top