Excel到Python的大面板数据,回归就绪格式?

时间:2016-07-23 23:39:49

标签: excel panel regression analysis

尝试从excel获取一些大的面板数据到python,这样我就可以进行一些GMM /跨部门面板数据回归分析(想想sci-kit包)。我已将数据从excel移至Python,但回归分析的格式不正确(见下文)。 Scikit网站上有一些数据集可供使用,但它对于讨论格式以及如何将数据转换为类似格式以将我的数据导入Python并不是很有用。

有没有人有使用excel(.xlsx)数据并将其纳入Python的经验,'回归就绪'?

我已经在R和Stata中完成了我需要的回归分析,但我希望能够更好地使用Python进行回归分析,因为它有一些很好的属性。

到目前为止,这是我的数据帧格式,从excel到Python。 (这是从10,000 X 60形状数据集中截断的)

   BANKS  YEARS     CIR         DSF   EQCUS     EQLI     EQNT      EQUITY  
0     CR1   2005   65.46   927915.00  28.553   23.948   37.542  264946.50   
1     CR1   2006   65.98  1026491.00  30.491   26.584   36.143  312986.00   
2     CR1   2007   60.26  1437615.00  27.003   23.413   28.238  388197.20   
3     CR1   2008   58.08  1605464.00  24.024   20.160   25.828  385696.80   
4     CR1   2009   65.21  1538570.00  28.160   22.850   27.907  433267.30   
5     CR1   2010   54.45  1822863.00  31.009   24.555   28.274  565254.60   
6     CR1   2011   57.38  2075505.00  30.905   24.861   29.618  641440.50   
7     CR1   2012   62.12  2533641.00  29.595   24.509   28.883  749821.50   

数据类型:

>>>df.dtypes

BANKS                   object
YEARS                    int64
CIR                    float64
DSF                    float64
EQCUS                  float64
EQLI                   float64
EQNT                   float64
EQUITY                 float64

列中的Unicode(我不认为sci-kit喜欢这样!)

>>>df.columns.tolist()

[u'BANKS', u'YEARS', u'CIR', u'DSF', u'EQCUS', u'EQLI', u'EQNT', u'EQUITY']

1 个答案:

答案 0 :(得分:0)

我不确定您在回归中包含哪些列,或者您获得了哪些错误,但您无法在回归中使用分类变量(例如' BANKS&#39)。您需要将分类var转换为虚拟变量(二进制0/1)并从回归中排除原始分类变量。

我也不相信您可以包含缺少数据点的行,因此您需要将数据插入或删除行。 (pandas中的df.fillna)

您可能需要考虑使用pandas来管理python中的数据集。它是一个可以在python中安装和导入的包,并使python的行为更像R或STATA。这里有一个很好的教程:http://pandas.pydata.org/pandas-docs/stable/10min.html

Pandas甚至具有将分类变量转换为虚拟变量的功能:http://pandas.pydata.org/pandas-docs/stable/generated/pandas.get_dummies.html

希望有帮助...