尝试从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']
答案 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
希望有帮助...