Исправьте ярлык экзогенных переменных в summary_col с python statsmodels - PullRequest
1 голос
/ 15 января 2020

Я хочу создать таблицы регрессии, подобные тем, которые были получены с помощью summary_col (стандартные таблицы журнала), но с настраиваемыми пояснительными метками переменных.

Есть ли способ изменить имена строк, сохраненные в атрибуте params модели?

На данный момент я переименовываю переменные как можно ближе к тому, что собираюсь, но должен быть лучший способ сделать это.

1 Ответ

0 голосов
/ 20 января 2020

Предположим, что вы сделали

reg = smf.ols(formula = "y~x1+x2+x3").fit()

Я предлагаю (1) иметь словарь, в котором хранится вся перемаркировка: di c = {original_vname: new_name} a (2) пара полезных функции:

def rename_vars(vname): 
    to_ret = vname
    for orig_vname in list(dic.keys()):
        if vname == 'original_vname':
            to_ret = dic['original_vname'] 
    return to_ret

и

def rename_ols(reg): 
    for i in range(len(reg)): 
        reg[i] = rename_vars(reg[i])

Затем просто выполните:

rename_ols(reg.model.exog_names) 

И все. Как только вы вызовете summary_col, переменные появятся с новыми метками.

...