楼主: huagnxinbnu
15667 20

[编程问题求助] stata13 使用profile问题 [推广有奖]

  • 2关注
  • 1粉丝

博士生

59%

还不是VIP/贵宾

-

威望
0
论坛币
2118 个
通用积分
4.1521
学术水平
2 点
热心指数
2 点
信用等级
0 点
经验
4034 点
帖子
129
精华
0
在线时间
488 小时
注册时间
2009-11-22
最后登录
2024-2-19

5论坛币
我将连玉君提供的profile放在安装目录下,用stata13运行 报错r101
请高手帮忙修改一下该文件(貌似就是黄色加亮的地方有误):


*-说明:
* 此文件设定了每次启动stata时需要做的一些基本设定
* 你可以在此文件中添加你希望在stata启动时立刻执行的命令

set type double
set memory 50m
set matsize 2000
set scrollbufsize 500000  // 结果窗口中显示的行数上限
set more off, perma

adopath + "D:\stata10\ado\personal"
*采用相似的方式,可添加其它允许stata搜索的目录
*adopath + "路径1"
*adopath + "路径2"


sysdir set PLUS "D:\stata11\ado\plus"          // 外部命令的存放位置
sysdir set OLDPLACE "D:\stata11\ado\myado"     // 自行编写的stata程序
sysdir set PERSONAL "D:\stata11\ado\personal"  // 个人文件夹位置


* log文件:自动以当前日期为名存放于 stata11\do 文件夹下
* 若 stata11\ 下没有 do 文件夹,则自行建立一个
cap cd `c(sysdir_stata)'do
if _rc{
   mkdir `c(sysdir_stata)'do
}
local fn = subinstr("`c(current_time)'",":","",2)
local fn1 = subinstr("`c(current_date)'"," ","",3)
log using `c(sysdir_stata)'do\s`fn1'`fn'.log, text replace
cmdlog using `c(sysdir_stata)'do\c`fn1'`fn'.log, replace




*cd d:\stata11\ado\personal   // stata启动后自动进入该目录
cd `c(sysdir_personal)'


*! gegerate submenu of Meta-analysis
if _caller() >= 8 {
  window menu clear
  window menu append submenu "stUser" "&Meta-Analysis"
  window menu append item "Meta-Analysis" "Of Binary and Continuous (meta&n)" "db metan"
  window menu append item "Meta-Analysis" "Of Effects (&meta)" "db meta"
  window menu append item "Meta-Analysis" "Of p-values (meta&p)" "db metap"
  window menu append item "Meta-Analysis" "Cumulative (meta&cum)" "db metacum"
  window menu append item "Meta-Analysis" "Regression (meta&reg)" "db metareg"
  window menu append item "Meta-Analysis" "Funnel Graph, metan-based (f&unnel)" "db funnel"
  window menu append item "Meta-Analysis" "Funnel Graph, &vertical (metafunnel)" "db metafunnel"
  window menu append item "Meta-Analysis" "L'abbe Graph, metan-based (&labbe)" "db labbe"
  window menu append item "Meta-Analysis" "NNT, metan-based (metann&t)" "db metannt"
  window menu append item "Meta-Analysis" "Influence Analysis, metan-based (metan&inf)" "db metaninf"
  window menu append item "Meta-Analysis" "Influence Analysis, meta-based (metain&f)" "db metainf"
  window menu append item "Meta-Analysis" "Galbraith Plot for Heterogeneity (&galbr)" "db galbr"
  window menu append item "Meta-Analysis" "Publication Bias (meta&bias)" "db metabias"
  window menu append item "Meta-Analysis" "Trim and Fill Analysis (met&atrim)" "db metatrim"
  window menu append item "Meta-Analysis" "Meta_lr" "db meta_lr"
  window menu refresh
}


最佳答案

zlqs1985 查看完整内容

我调整后的profile.do文件 *-说明: * 此文件设定了每次启动 stata 时需要做的一些基本设定 * 你可以在此文件中添加你希望在stata启动时立刻执行的命令 local C "C" // 在 " " 中填入 stata12 软件所在的硬盘盘符, // 若 stata12 放在 H 盘,即 H:\stata12, 则填入 H 即可 set type double // 设定 generate 命令产生的新变量为双精度类型 set memory 50m // 为 Stata 分配 ...
关键词:Stata13 Profile Stata file tata profile

本帖被以下文库推荐

沙发
zlqs1985 发表于 2014-10-9 17:02:54 |只看作者 |坛友微信交流群
我调整后的profile.do文件

*-说明:
* 此文件设定了每次启动 stata 时需要做的一些基本设定
* 你可以在此文件中添加你希望在stata启动时立刻执行的命令

local C "C"     // 在 " " 中填入 stata12 软件所在的硬盘盘符,
                // 若 stata12 放在 H 盘,即 H:\stata12, 则填入 H 即可

set type double           // 设定 generate 命令产生的新变量为双精度类型
set memory 50m            // 为 Stata 分配 50m 内存
set matsize 2000          // 设定矩阵的维度为 2000x2000
set scrollbufsize 2040000 // 结果窗口中显示的行数上限
set more off, perma       // 关闭分页提示符

//-有关这一部分的完整设定命令,请输入 help set 命令进行查看

sysdir set PLUS "C:\Program Files (x86)\Stata12\ado\stbplus"     //外部命令的存放位置
/*sysdir set OLDPLACE "`D':\stata12\ado\personal\_myado"   自行编写的stata程序*/
sysdir set PERSONAL "C:\Program Files (x86)\Stata12\ado\Personal"  //个人文件夹位置


*-课程中使用的自编命令存放于此处,将其设定为 Stata 自动搜索的目录范围
adopath + "C:\data\A1_intro"
adopath + "C:\data\A2_data"

*采用相似的方式,可添加其它允许stata搜索的目录
*adopath + "路径1"
*adopath + "路径2"


* log文件:自动以当前日期为名存放于 stata12\do 文件夹下
* 若 stata12\ 下没有 do 文件夹,则自行建立一个
cap cd `c(sysdir_stata)'do
if _rc{
   mkdir `c(sysdir_stata)'do
}
local fn = subinstr("`c(current_time)'",":","",2)
local fn1 = subinstr("`c(current_date)'"," ","",3)
log using `c(sysdir_stata)'do\s`fn1'`fn'.log, text replace
cmdlog using `c(sysdir_stata)'do\c`fn1'`fn'.log, replace


*cd `D':\stata12\ado\personal   // stata启动后自动进入该目录
cd `c(sysdir_personal)'
已有 1 人评分论坛币 学术水平 热心指数 收起 理由
SpencerMeng + 20 + 1 + 1 观点有启发

总评分: 论坛币 + 20  学术水平 + 1  热心指数 + 1   查看全部评分

使用道具

藤椅
austen06 发表于 2014-10-10 04:40:15 |只看作者 |坛友微信交流群
你确定stata 13跑了这个profile文件么?我在我的profile里写了set more off,但貌似从来都没有执行过

使用道具

板凳
zlqs1985 发表于 2014-10-17 11:34:08 |只看作者 |坛友微信交流群
  顶,我也遇到了同样的问题,楼主找到解决方法了吗?

使用道具

报纸
zlqs1985 发表于 2014-10-17 11:44:43 |只看作者 |坛友微信交流群
QQ截图20141017114351.png

使用道具

地板
zlqs1985 发表于 2014-10-17 16:03:50 |只看作者 |坛友微信交流群
  顶上去啊[tongue

使用道具

7
huagnxinbnu 发表于 2014-10-18 17:25:14 |只看作者 |坛友微信交流群

cap cd `c(sysdir_stata)'do
if _rc{
   mkdir `c(sysdir_stata)'do
}
删掉就行了……

使用道具

8
zlqs1985 发表于 2014-10-20 10:52:49 |只看作者 |坛友微信交流群
huagnxinbnu 发表于 2014-10-18 17:25

cap cd `c(sysdir_stata)'do
if _rc{
  我理解的是不是这条命令是在stata根目录下没有do文件夹的情况下自动创建,但是手动创建的话就不需要,不过还是不明白为什么会自动报错,即使我已经手动创建了,也应该自动跳过啊。不管怎样,还是多谢

使用道具

9
zlqs1985 发表于 2014-10-20 11:25:58 |只看作者 |坛友微信交流群
  我觉得关键还在于为什么stata (我的是Stata12)不能识别路径`c(sysdir_stata)'或者`c(sysdir_stata)'

使用道具

10
zlqs1985 发表于 2014-10-20 11:32:44 |只看作者 |坛友微信交流群
c(sysdir stata) returns a string containing the name of the directory in which Stata is installed.
More technically, c(sysdir stata) returns the STATA directory as defined by sysdir; see
[P] sysdir.
Example: C:\Program Files\Stata13/
The above example contains no typographical errors. Under Windows, the directory name will
end in forward slash. That is so you can code things such as ‘c(sysdir stata)’‘filename’.
If c(sysdir stata) ended in backslash, Stata’s macro expander would interpret the backslash
as an escape character and so not expand ‘filename’.

使用道具

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-1 07:11