Variance Inflation Factor in Python

前端 未结 8 594
星月不相逢
星月不相逢 2020-12-22 23:04

I\'m trying to calculate the variance inflation factor (VIF) for each column in a simple dataset in python:

a b c d
1 2 4 4
1 2 6 3
2 3 7 4
3 2 8 5
4 1 9 4
         


        
8条回答
  •  臣服心动
    2020-12-22 23:34

    here code using dataframe python:

    To create data

    import numpy as np
    import scipy as sp

    a = [1, 1, 2, 3, 4]
    b = [2, 2, 3, 2, 1]
    c = [4, 6, 7, 8, 9]
    d = [4, 3, 4, 5, 4]

    To create dataframe

    import pandas as pd
    data = pd.DataFrame()
    data["a"] = a
    data["b"] = b
    data["c"] = c
    data["d"] = d

    Calculate VIF

    cc = np.corrcoef(data, rowvar=False)
    VIF = np.linalg.inv(cc)
    VIF.diagonal()

    Result

    array([22.95, 3. , 12.95, 3. ])

提交回复
热议问题