У меня есть profile.do
, где говоритсяStata: Сбой при установке глобального пути
global prog "C:\Users\foobar\Google Drive\Cloud\PhD\Projects\Labor Supply\LIAB_QM2_9310_v1_test_dta\prog"
Тогда у меня другой Stata different.do
файл, в котором это переменном предполагается установить
adopath ++ $prog
Однако , это не сработает. Так что я пытался обнаружить корень ошибки:
. display $prog
C:\Users\foobar\Google invalid name
Использование '
вместо "
не помогло:
. global prog 'C:\Users\sdaro\Google Drive\Cloud\PhD\Projects\Labor Supply\LIAB_QM2_9310_v1_test_dta\prog'
. display $prog
'C:\Users\sdaro\Google invalid name
r(198);
Похоже, он пытается заменить Drive
с чем-то, но я не» получить. Как я могу исправить эту проблему?
FooBar, я думаю, вы неправильно поняли. Второй пример Роберто, содержащий двойные кавычки, создает глобальную переменную, которая при использовании в операторах consath преуспевает в добавлении нового каталога, пробелов и всех объектов в начало. –
Последнее наблюдение: часть более позднего кода (который я не могу коснуться) также была «do» $ prog/дополнительнаяPath ». Однако эта спецификация приводит к ошибке: 'display '$ prog/дополнительнаяPath" 'снова возвращает ошибку' invalid name'. Есть ли альтернатива двойным кавычкам, которая до сих пор позволяет мне делать эту операцию таким образом? – FooBar
Полагаю, вы изменили исходный путь в 'global prog' и добавили свой собственный путь. Это верно? Если да, исходный путь имел пробел? Если новый путь, который вы используете, не имеет пробелов, у вас не возникнет никаких проблем. Если вы настаиваете на использовании пути с пробелами, но вы не можете вносить изменения в другие части кода, вам нужно подождать, пока кто-то опубликует какое-либо другое решение. Если вы можете добавить код (но не удалять исходный код), вы можете переопределить 'global' всякий раз, когда вам нужно. Он работает, но он не выглядит или не кажется правильным. –