Преобразование объекта R RS4 в объект типа python - PullRequest
0 голосов
/ 10 июля 2020

Я делаю прогнозирование ARIMA - GARCH с использованием пакетов R в Python через пакет rpy2.

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from statsmodels.tsa.stattools import adfuller
plt.style.use("fivethirtyeight")
import scipy.stats as st
from rpy2.robjects.packages import importr
import rpy2.robjects as robjects
from rpy2.robjects import numpy2ri

df = pd.read_csv('15 min Jan 18 new')
df=df.iloc[-2500:]

df['pct']=df['Adj Close'].pct_change()
df['pct']=df['pct']*100
df.dropna(subset=['pct'], inplace=True)
df.reset_index(inplace=True,drop=True)


rugarch = importr('rugarch')
garch_spec = rugarch.ugarchspec(
    mean_model=robjects.r('list(armaOrder = c(%d,%d))' % (0, 2)),
    variance_model=robjects.r('list(model="csGARCH",garchOrder=c(%d,%d))'% (1, 1)),
    distribution_model='sstd')

# Used to convert training set to R list for model input
numpy2ri.activate()

roll=rugarch.ugarchroll(spec=garch_spec,data=df['pct'].tolist(), n_ahead = 1,
n_start = 1000,  refit_every = 500, refit_window = "moving", window_size=1000,
solver = "hybrid")

print(roll)

Roll - это объект типа RS4, из которого я хочу извлечь столбцы Mu и 'Сигма'. Итак, вопрос в том, как это сделать? Как преобразовать объект типа RS4 в python читаемый объект?

Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...