rolling
을 피하고 롤백 회귀를 수동으로 코딩해야합니까? 또는 겹쳐진 항목이있는 거대한 패널을 만들고 statsby
을 사용하는 것이 더 낫지는 않습니까? 즉, 각 창에 자체 by
항목을 입력하십시오. R에서는 데이터를 날짜 프레임 목록으로 미리 분할 할 수 있습니다.이 작업은 후속 작업의 속도를 높입니다.Stata의 롤링 회귀 가속화
한 달 전에 R에서 Stata로 전환했을 때 나는 asked this on Statalist이고 그 합의는 이어야합니다.은 오래 걸려야합니다. 필자는 Mata에서 OLS를 코딩하고 컴파일하여 속도 향상을 발견하지 못했습니다 (실제로는 약간 악화됨).
롤링 회귀는 일반적인 기술이며 Stata는 꽤 정교 해 보입니다. 대부분의 연구자들은 1 일 이상이 회귀 분석을 실시하고 있습니까? 아니면이 계산을 위해 SAS를 사용하고 있습니까? 예를 들어, 1975 년에서 2010 년까지 Compustat 데이터베이스 (약 30,000 회 회귀)에서 다음을 실행하면 약 12 시간이 걸립니다.
rolling arbrisk = (e(rss)/e(N)), window(48) stepsize(12) ///
saving(arbrisk, replace) nodots: regress r1 ewretd
고마워요! 나는 Statistist가 맞았지만 _ 나는 그들에게 맞기를 원하지 않았다. '프로파일 링 (profiler) '은 롤링 (rolling)에 많은 오버 헤드가 있음을 확인하는 트릭입니다. 나는 열쇠가'while' 루프와 합계를 사용하여 회귀를 수동으로 코딩하는 것이라고 생각합니다. –
나는 오버 헤드가 너무 많다는 사실에 놀라지 않습니다. '롤링 (rolling) '은 일반적인 목적의 도구이며 오히려 견고해야합니다. 그것은 당신의 데이터를 확인하는 데 시간을 할애합니다. 또한, 많은 통계 명령을 사용하여 작업하기위한 것입니다. 데이터 구조에 대해 확신하고 특정 기술을 염두에두고 있다면 성능을 향상시킬 수 있어야합니다. –