Нет, сохранение дважды без восстановления промежуточного значения просто приводит к ошибке:
sysuse auto, clear
preserve
drop mpg
preserve
already preserved
r(621);
Однако вы можете сделать нечто подобное, используя временные файлы.С help macro
:
"... tempfile присваивает имена указанным локальным именам макросов, которые могут использоваться в качестве имен для временных файлов. Когда программа илиdo-file завершает, все наборы данных, созданные с этими назначенными именами, стираются ... "
Рассмотрим следующий игрушечный пример:
tempfile one two three
sysuse auto, clear
save `one'
drop mpg
save `two'
drop price
save `three'
use `two'
list price in 1/5
+-------+
| price |
|-------|
1. | 4,099 |
2. | 4,749 |
3. | 3,799 |
4. | 4,816 |
5. | 7,827 |
+-------+
use `one'
list mpg in 1/5
+-----+
| mpg |
|-----|
1. | 22 |
2. | 17 |
3. | 22 |
4. | 20 |
5. | 15 |
+-----+