gpt4 book ai didi

stata - 如何通过 Dropbox 或私有(private)网站发​​布 Stata 程序?

转载 作者:行者123 更新时间:2023-12-01 11:43:52 26 4
gpt4 key购买 nike

这是一个示例程序.do文件,sampleprog.do :

program sampleprog
egen newVar = group (`1' `2')
end

如何将其发布在我的网站(或保管箱)上,以便其他人可以像这样将其安装到他们的 Stata 中?
net from http://www.mywebsite.com/sampleprog.do
*** or may be like like this:
ssc install ...

我阅读了有关 stata.toc 的文档...但我不太明白。我应该上传哪些文件,应该是一个文件夹还是什么?

(PS:我绝对可以简单地通过电子邮件发送 .do 文件,但在我的情况下这不是一个选项。)

最佳答案

以下是有关如何使用您自己的网站与他人共享程序或数据文件的完整说明。我尝试使用 Dropbox,但 Stata 12 似乎存在 https 问题,这是所有 Dropbox 公共(public)链接的协议(protocol)。如果您想使用 Dropbox,我建议您创建一个共享文件夹,以便在您的协作者的机器上同步。该答案的其余部分假设您有一个通过 http 提供页面的网站,或者正在使用支持 https 的 Stata 13。

如果这是一次性的事情,您可以通过将文件放在您的网站上并告诉您的合作者输入来跳过此答案的其余部分:

. copy http://your-site.com/ado/program.ado program.ado

这将复制 ado将指定 url 处的文件放入用户的当前目录。如果您想提供有关您的文件的信息,计划与多人共享并需要维护/记录一组文件,请继续阅读!

第一步在您的网站上创建一个文件夹来保存程序。我会调用我的 ado/
第二步添加要共享的程序文件、帮助文件和数据文件。对于这个例子,我创建了一个简单的 ado名为 unique.ado 的文件内容如下:
********************************************** unique.ado
capture program drop unique
program define unique
*! Count and number observations within group defined by varlist
* Example: unique person_id, obs(prow) tobs(pcount) sortby(time)
* to count and number rows by a variable called person_id
syntax varlist, obs(name) tobs(name) [sortby(varlist)]
bys `varlist' (`sortby') : gen long `obs' = _n
bys `varlist' (`sortby') : gen long `tobs' = _N
la var `obs' "Number of this row within `varlist' group."
la var `tobs' "Total number of rows with identical `varlist' values."
end

第三步创建一个名为 stata.toc 的文件描述您希望共享的文件。这是我的:
********************************************** stata.toc
v 3
d Program to count observations by group
p unique [The unique.ado program for counting observations by group]

这些文件可能很复杂。有很多功能我不会在这里介绍,但是您可以 read this documentation了解更多。

第 4 步 stata.toc 中的行定义的每个包创建一个包文件以字母 p 开头的.这是我的 unique 的包文件上面定义的包:
********************************************** unique.pkg
v 3
d unique
d Program to count observations by group
d Distribution-Date: 28 June 2012
f unique.ado

您的目录现在如下所示:
ado/
stata.toc
unique.ado
unique.pkg

第五步使用网站!这是要输入的命令。
. net from http://example.com/ado/
. net describe unique
. net install unique

这是输入第一个命令后您将看到的内容:
-----------------------------------------------------------------------------------
http://www.example.com/ado/
Program to count observations by group
-----------------------------------------------------------------------------------

PACKAGES you could -net describe-:
unique [The unique.ado program for counting observations by group]
-----------------------------------------------------------------------------------

第二个命令会告诉你更多关于包 net describe unique的信息。 :
---------------------------------------------------------------------------------------
package unique from http://www.example.com/ado
---------------------------------------------------------------------------------------

TITLE
unique

DESCRIPTION/AUTHOR(S)
Program to count observations by group
Distribution-Date: 28 June 2012

INSTALLATION FILES (type net install unique)
unique.ado
---------------------------------------------------------------------------------------

第三条命令将安装包 net install unique :
checking unique consistency and verifying not already installed...
installing into /Users/cpoliquin/Library/Application Support/Stata/ado/plus/...
installation complete.

编辑

请参阅下面答案中尼克的评论。我希望这个例子简单,我不希望其他人使用这个程序。如果您打算向 Stata Journal 或 SSC 提交内容,那么他​​的评论当然适用!我希望这个答案可以为那些被官方文档迷惑的人提供一个不错的教程。

关于stata - 如何通过 Dropbox 或私有(private)网站发​​布 Stata 程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17256390/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com