1

我正在用 C++ 为 Stata 编写一个插件,在我看来,访问数据取决于传递给插件的变量的顺序,因为SF_vdata()只需要整数参数来索引变量。

我目前最好的解决方案是首先运行ds,存储包含所有变量名的宏,然后调用我的插件。然后,我的插件可以在宏中搜索它感兴趣的变量,并让索引库位于列表中的位置。

这可行,但我希望我的插件不依赖于首先运行的某些 Stata 命令。ds我知道这很愚蠢,因为插件需要以特定方式格式化数据集,但是在调用我的插件之前必须先调用和存储宏感觉有些不对劲。

如果ds不先调用,是否可以从插件内部访问变量名的顺序?

4

1 回答 1

0

我同意尼克的观点。不幸的是,您的宏解决方案是唯一的答案,也是我使用的。您只能使用 SF_data 函数直接访问数据,作为“矩阵”,这就是您默认获得的所有数据,没有像表格中的标题。我使用宏来保存所有数据信息并传递整个数据集,读取我感兴趣的变量,就像你一样,甚至写了翻译器来保留格式设置,但还没有使用值标签。

于 2015-03-14T05:18:06.777 回答