sql >> データベース >  >> RDS >> Mysql

Rでエイリアス係数を返すVIF

    Rの「alias」関数を使用して、どの変数が線形従属であるかを確認します。従属変数を削除すると、vif関数が正しく機能するはずです。

    formula <- as.formula(Spring_Autumn ~ Oct + Nov + Dec + Jan + Feb + Mar + Apr + May + Jun + Jul + Aug + Sep + X1min + X3min +   X7min + X30min + X90min + X1max + X3max + X7max + X30max + X90max + BF + Dmin + Dmax+ LP + LPD + HP + HPD + RR + FR + Rev, data = IHA_stats)
    fit <-lm(formula)
    
    #the linearly dependent variables
    ld.vars <- attributes(alias(fit)$Complete)$dimnames[[1]]
    
    #remove the linearly dependent variables variables
    formula.new <- as.formula(
        paste(
            paste(deparse(formula), collapse=""), 
            paste(ld.vars, collapse="-"),
            sep="-"
        )
    )
    
    #run model again
    fit.new <-lm(formula.new)
    vif(fit.new)
    

    注:これは、他の変数と同一の自動生成されたダミー変数がある場合は機能しません。変数名がめちゃくちゃになります。独自のハックを作成して回避することができます。




    1. SQL Serverのsp_add_scheduleとsp_add_jobschedule:違いは何ですか?

    2. データベースユーザー管理:MariaDBのロールの管理

    3. 複数列のデータベースインデックスとクエリ速度

    4. XMLからのデータのクエリ