сообщение об ошибке «слишком мало кавычек» при попытке использовать значение foreach в качестве строки - PullRequest
0 голосов
/ 27 марта 2019

Я пытаюсь добавить данные панели для семи файлов, используя цикл foreach.

Я знаю код в Stata для добавления и понимания команды foreach.

Это мой код, который я считаю правильным:

use "C:\Users\main\Documents\German patent applications 1996.dta"

foreach k in 1997 1998 1999 2000 2001 2002{
    append using "C:\Users\main\Documents\German patent applications "'k'".dta"  
}

Он должен добавить данные для всех семи файлов в один набор данных, содержащий данные за годы 1996-2002.

Однако, когда я запускаю этот код, я получаю сообщение об ошибке:

слишком мало кавычек r (132)

Я явно пытаюсь использовать значение k в качестве строки в имени файла, чтобы его можно было добавить.

Что яне так и как это исправить?

1 Ответ

2 голосов
/ 27 марта 2019

Предполагая, что имя файла имеет вид:

German patent applications 1997.dta

Для меня работает следующее:

foreach k in 1997 1998 1999 2000 2001 2002{
    display "C:\Users\main\Documents\German patent applications `k'.dta"
}

C:\Users\main\Documents\German patent applications 1997.dta
C:\Users\main\Documents\German patent applications 1998.dta
C:\Users\main\Documents\German patent applications 1999.dta
C:\Users\main\Documents\German patent applications 2000.dta
C:\Users\main\Documents\German patent applications 2001.dta
C:\Users\main\Documents\German patent applications 2002.dta
...