Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Stata Postfile错误:无效名称_Stata - Fatal编程技术网

Stata Postfile错误:无效名称

Stata Postfile错误:无效名称,stata,Stata,我在尝试运行代码时遇到了一个奇怪的问题。以下是我的代码示例(注意:我已经在主目录中): 问题是,每当我尝试运行此代码时,都会出现一个错误: postfile `post_handle' `postfile_varlist' using "fig/dta/es_M12_P11_`outcome'.dta", replace fig/dta/es_M12_P11_drr_trtd.dta invalid name 我假设这可能是因为引号,所以我删除了引号,然后得到以下错误: postfile `p

我在尝试运行代码时遇到了一个奇怪的问题。以下是我的代码示例(注意:我已经在主目录中):

问题是,每当我尝试运行此代码时,都会出现一个错误:

postfile `post_handle' `postfile_varlist' using "fig/dta/es_M12_P11_`outcome'.dta", replace
fig/dta/es_M12_P11_drr_trtd.dta invalid name
我假设这可能是因为引号,所以我删除了引号,然后得到以下错误:

postfile `post_handle' `postfile_varlist' using fig/dta/es_M12_P11_`outcome'.dta, replace
/ invalid name
然后,我尝试在没有文件路径的情况下创建该文件,我对postfile命令进行了如下编辑:

postfile `post_handle' `postfile_varlist' using "hello.dta", replace
现在,通过引用,我得到了错误:

"hello.dta invalid name
(note: file \fig\dta\event_study_M24_P59_sa.dta not found)
file \fig\dta\event_study_M24_P59_sa.dta could not be opened
没有引用,我得到了相同的错误,但是有hello.dat。我只是做错了什么吗?我不明白为什么我会犯这个错误

新代码:

local mydir /Users/F H/Desktop/Ray/analysis
cd "C:/`mydir'/" 

tempname post_handle
local postfile_varlist str12(tau_text) double(pt_est se) 
pwd

postfile `post_handle' `postfile_varlist' ///
    using "\fig\dta\event_study_M24_P59_sa.dta" ///
    , replace
我得到一个错误:

"hello.dta invalid name
(note: file \fig\dta\event_study_M24_P59_sa.dta not found)
file \fig\dta\event_study_M24_P59_sa.dta could not be opened

我似乎无法重现你的错误。一个有效的例子:

sysuse auto, clear

local outcome drr_trtd 

tempname post_handle

local postfile_varlist str12(tau_text) double(my_price myrep)

postutil clear

postfile `post_handle' `postfile_varlist' ///
    using "test/test2/resu_lts_`outcome'.dta", replace

post `post_handle' (make[1]) (price[1]) (rep78[1])

postclose `post_handle'

use "test/test2/resu_lts_`outcome'.dta", clear

list

(我已经创建了相应的测试目录。)

我似乎无法重现您的错误。一个有效的例子:

sysuse auto, clear

local outcome drr_trtd 

tempname post_handle

local postfile_varlist str12(tau_text) double(my_price myrep)

postutil clear

postfile `post_handle' `postfile_varlist' ///
    using "test/test2/resu_lts_`outcome'.dta", replace

post `post_handle' (make[1]) (price[1]) (rep78[1])

postclose `post_handle'

use "test/test2/resu_lts_`outcome'.dta", clear

list

(我已经创建了相应的测试目录。)

我似乎无法重现您的错误。一个有效的例子:

sysuse auto, clear

local outcome drr_trtd 

tempname post_handle

local postfile_varlist str12(tau_text) double(my_price myrep)

postutil clear

postfile `post_handle' `postfile_varlist' ///
    using "test/test2/resu_lts_`outcome'.dta", replace

post `post_handle' (make[1]) (price[1]) (rep78[1])

postclose `post_handle'

use "test/test2/resu_lts_`outcome'.dta", clear

list

(我已经创建了相应的测试目录。)

我似乎无法重现您的错误。一个有效的例子:

sysuse auto, clear

local outcome drr_trtd 

tempname post_handle

local postfile_varlist str12(tau_text) double(my_price myrep)

postutil clear

postfile `post_handle' `postfile_varlist' ///
    using "test/test2/resu_lts_`outcome'.dta", replace

post `post_handle' (make[1]) (price[1]) (rep78[1])

postclose `post_handle'

use "test/test2/resu_lts_`outcome'.dta", clear

list

(我已经创建了相应的测试目录。)

只要我在当前目录中有写权限,以下测试对我有效,否则无效

sysuse auto, clear
local outcome drr_trtd 
tempname post_handle
local postfile_varlist str12(tau_text) double(my_price myrep)
postutil clear
postfile `post_handle' `postfile_varlist' using `outcome'.dta, replace
post `post_handle' (make[1]) (price[1]) (rep78[1])
postclose `post_handle'
use `outcome'.dta, clear
list

以下测试对我有效,只要我在当前目录中有写权限,否则不行

sysuse auto, clear
local outcome drr_trtd 
tempname post_handle
local postfile_varlist str12(tau_text) double(my_price myrep)
postutil clear
postfile `post_handle' `postfile_varlist' using `outcome'.dta, replace
post `post_handle' (make[1]) (price[1]) (rep78[1])
postclose `post_handle'
use `outcome'.dta, clear
list

以下测试对我有效,只要我在当前目录中有写权限,否则不行

sysuse auto, clear
local outcome drr_trtd 
tempname post_handle
local postfile_varlist str12(tau_text) double(my_price myrep)
postutil clear
postfile `post_handle' `postfile_varlist' using `outcome'.dta, replace
post `post_handle' (make[1]) (price[1]) (rep78[1])
postclose `post_handle'
use `outcome'.dta, clear
list

以下测试对我有效,只要我在当前目录中有写权限,否则不行

sysuse auto, clear
local outcome drr_trtd 
tempname post_handle
local postfile_varlist str12(tau_text) double(my_price myrep)
postutil clear
postfile `post_handle' `postfile_varlist' using `outcome'.dta, replace
post `post_handle' (make[1]) (price[1]) (rep78[1])
postclose `post_handle'
use `outcome'.dta, clear
list


你说“我已经在主目录中”是什么意思。这是否意味着您在
fig
目录中?尝试发布一个显示错误的可复制示例。类似于我在下面发布的内容。(我无法复制。)您使用的是Stata的更新版本吗?运行
update
。您是否在部分运行代码?一次运行所有程序并报告。在调用
postfile
之前插入
macro list
。这将显示哪些本地宏可见。本地宏
var
未在您的代码中定义,尽管这在这里似乎并不重要。我无法了解详细信息,但我仍然猜测,与您的工作位置相比,Stata无法确定您想要输出文件的位置。我通常在和我想保存东西的目录完全相同的目录下工作。当然也有例外,但尽管我有时会感到困惑,但我不知道斯塔塔在这里是错的。你说“我已经在主目录中”是什么意思。这是否意味着您在
fig
目录中?尝试发布一个显示错误的可复制示例。类似于我在下面发布的内容。(我无法复制。)您使用的是Stata的更新版本吗?运行
update
。您是否在部分运行代码?一次运行所有程序并报告。在调用
postfile
之前插入
macro list
。这将显示哪些本地宏可见。本地宏
var
未在您的代码中定义,尽管这在这里似乎并不重要。我无法了解详细信息,但我仍然猜测,与您的工作位置相比,Stata无法确定您想要输出文件的位置。我通常在和我想保存东西的目录完全相同的目录下工作。当然也有例外,但尽管我有时会感到困惑,但我不知道斯塔塔在这里是错的。你说“我已经在主目录中”是什么意思。这是否意味着您在
fig
目录中?尝试发布一个显示错误的可复制示例。类似于我在下面发布的内容。(我无法复制。)您使用的是Stata的更新版本吗?运行
update
。您是否在部分运行代码?一次运行所有程序并报告。在调用
postfile
之前插入
macro list
。这将显示哪些本地宏可见。本地宏
var
未在您的代码中定义,尽管这在这里似乎并不重要。我无法了解详细信息,但我仍然猜测,与您的工作位置相比,Stata无法确定您想要输出文件的位置。我通常在和我想保存东西的目录完全相同的目录下工作。当然也有例外,但尽管我有时会感到困惑,但我不知道斯塔塔在这里是错的。你说“我已经在主目录中”是什么意思。这是否意味着您在
fig
目录中?尝试发布一个显示错误的可复制示例。类似于我在下面发布的内容。(我无法复制。)您使用的是Stata的更新版本吗?运行
update
。您是否在部分运行代码?一次运行所有程序并报告。在调用
postfile
之前插入
macro list
。这将显示哪些本地宏可见。本地宏
var
未在您的代码中定义,尽管这在这里似乎并不重要。我无法了解详细信息,但我仍然猜测,与您的工作位置相比,Stata无法确定您想要输出文件的位置。我通常在和我想保存东西的目录完全相同的目录下工作。当然也有例外,但我有时会感到困惑,我不知道斯塔塔在这里是错的。好的,谢谢。这不知怎么起作用了。我所做的只是将它复制粘贴到一个新的do文件中,并根据我自己的代码进行了一些调整。我仍然无法让原始的do文件工作,但这不再是一个问题,因为这项支出与我的代码一起工作。你是我的朋友hero@Roberto和我一样值得称赞,因为我共同解决了你一半的问题。我们没有发现你犯的错误。当你有足够的声望时,回来给他投票。好的,谢谢。这不知怎么起作用了。我所做的只是把它复制粘贴到一个新的do文件中,然后调整它的大小