Stata未能调用全局变量?

时间:2016-11-06 07:50:46

标签: stata

以下简单的事情不起作用。

global inputfolder "C:\Users\Focus\Google Drive\1. hani and\Raw data\2004"

cd $inputfolder

它说

invalid syntax

但如果我这样做

global inputfolder "C:\Users"

cd $inputfolder

然后它有效。我尝试过添加“=”

global inputfolder="C:\Users\Focus\Google Drive\1. hani and\Raw data\2004"

但它没有帮助。

我应该怎样做才能使第一件事有效?

1 个答案:

答案 0 :(得分:4)

写作时

global inputfolder "C:\Users\Focus\Google Drive\1. hani and\Raw data\2004"
cd $inputfolder

Stata将全局引用替换为全局内容,以便cd看到

cd C:\Users\Focus\Google Drive\1. hani and\Raw data\2004 

但这些空间有问题。这个建议在cd的帮助中很突出(参见例如http://www.stata.com/help.cgi?cd):

  

如果您的directory_name包含嵌入的空格,请记得附上   它           双引号。

因此你需要的只是

cd "$inputfolder" 

请注意,将字符串复制到全局字符串并将字符串分配给全局字符串之间的区别确实没有区别,因为问题完全在于提供cd一个它无法理解的字符串。

在术语上,请注意全局宏不被视为Stata中的变量。该术语保留给数据集中的列。