我想知道如何将Stata代码转换为Python代码。
例如,我的Stata代码如下
if ("`var1'"=="") {
local l_QS "select distinct CountryName from `l_tableName'"
ODBCLoad, exec("`l_QS'") dsn("`dsn'") clear
}
我想将其转换为
之类的Python代码if (f"{var1}"=="") :
l_QS = f"select distinct CountryName from {l_tableName}"
SQL_read(f"{l_QS}", dsn = f"{dsn}")
我是编码的新手,所以我不知道计算机科学知识的哪个分支或相关的工具/技术。我想了解有关编译器和/或使用正则表达式的知识可能会有所帮助,因此我将这些标记放在我的问题上。任何高级指针都将受到赞赏,并且特定的代码示例将更好。预先感谢。
答案 0 :(得分:0)
一个非常简单的解决方法是使用python随附的subprocess模块,然后将基本的命令行包装程序写入脚本以使用其功能,然后从现在开始在python中构建代码。
如果您有很多Stata代码,那么您也可以研究Stata中可能的API功能,并且将其手动转换为python可能要花费很多时间。这将要求您具有访问服务器的权限,并且可能成本很高,但是比子流程模块更干净,并且不需要源代码包含在本地计算机上。另外请注意,Stata可能没有构建API的工具。
据我所知,没有项目可以直接从任何语言解析文件并将其转换为python。这将是一个巨大的项目,尽管可能通过机器学习或AI进行,尽管仍然很困难。有一些库可以用C和C ++包装代码(其他的库也可以,我敢肯定我只是知道它们可用),但是我找不到Stata的任何东西。