我想知道是否有人知道一个 Python 包,它允许您以.dta
统计数据分析软件 Stata 的格式保存 numpy 数组/recarrays。这真的会加快我拥有的系统中的几个步骤。
问问题
7300 次
3 回答
8
scikits.statsmodels包包括一个 Stata 数据文件的阅读器,正如@Sven 所指出的,它部分依赖于 PyDTA。特别是,genfromdta()
将返回一个ndarray
,例如来自 Python 2.7/statsmodels 0.3.1:
>>> import scikits.statsmodels.api as sm
>>> arr = sm.iolib.genfromdta('/Applications/Stata12/auto.dta')
>>> type(arr)
<type 'numpy.ndarray'>
该savetxt()
函数可以依次将数组保存为文本文件,可以在Stata中导入。例如,我们可以将以上内容导出为
>>> sm.iolib.savetxt('auto.txt', arr, fmt='%2s', delimiter=",")
并在没有字典文件的情况下在 Stata 中读取它,如下所示:
. insheet using auto.txt, clear
我相信*.dta
应该在不久的将来添加一个读者。
于 2012-01-29T19:24:57.323 回答
7
我能找到的唯一一个用于 STATA 互操作性的 Python 库.dta
仅提供对文件的只读访问。然而,Rforeign
库提供了一个函数write.dta
,而RPy为 R 提供了一个 Python 接口。也许这些工具的组合可以帮助你。
于 2011-09-21T18:45:45.337 回答