Разработайте программу в Stata для обработки нескольких файлов в рабочей папке так же, как SAS, используя временный файл

Я разрабатываю эту оболочку вокругtempfile в Stata для обработки нескольких наборов данных одновременно, без необходимости сохранять их в текущем каталоге. По сути, я хочу, чтобы Stata имитировала SAS, и именно поэтому название программы - работа; исходный код без каких-либо опций и минимальной функциональности. Я придерживаюсь вашего совета, чтобы не токенизировать и не работать программы; однако проблема заключается в том, что когда я вспоминаю временный файл в другой программе, эта программа (работа) не передает дескриптор следующему для вызова временного файла.

код для "работы"
capture program drop work
program define work
version 12.1
syntax [name(id="file name")] [, sort(string) ]
*tokenize namelist
*di "namelist'" 
*if "nol'" !="" | "nol'" !="" | "nolabel'" !="" { 
      * di "``namelist''" 
*} 
tempfile namelist' 
*di "namelist'" 
if "sort'" != "" { 
    sortsort' 
} 
di "File 'namelist'' saved in following temporary work folder" 
save ` namelist''

*di "Now you can use temporary file =namelist'' in your program" 
end

Как только я вызываю временный файл в моем файле do следующим образом, появляется эта ошибка:

work Orig File 'Orig' saved in following temporary work folder file C:\Users\saa602\AppData\Local\Temp\ST_00000001.tmp saved

. di "`Orig'"

. use `Orig', replace

invalid file specification

Обратите внимание, что я используюtempfile успешно обрабатывать несколько файлов, особенно после объединения большого количества файлов без каких-либо хлопот; однако программа-обертка с параметрами сортировки и отображения местоположения рабочего каталога была бы очень полезна для всех нас.

Ответы на вопрос(0)

Ваш ответ на вопрос