Скажите SAS не добавлять вновь созданные таблицы в поток процессов
У меня есть код SAS, который создает множество промежуточных таблиц для моих вычислений. Дело в том, что я не очень забочусь об этих таблицах после того, как работа завершена, я только забочусь о результатах финала.
Но каждый раз, когда я запускаю этот код, SAS добавляет все сгенерированные таблицы в поток процессов, превращая его в огромный беспорядок (я говорю здесь о 40+ промежуточных таблицах).
Есть ли способ сказать SAS не добавлять некоторые таблицы в поток процессов? Или, по крайней мере, сказать, чтобы не добавлять никаких таблиц вообще? Я использую SAS Enterprise Guide 4.1
Заранее спасибо
Ответы
Ответ 1
В SAS 9.1.x и 9.2.x(для Windows) возможно подавление отображения наборов данных в клиентских средах SAS путем префикса имени набора данных с помощью "_TO". Таким образом, в вашем коде и/или задачах вы можете называть все ваши исходные наборы данных _TO<DataSetName>
, и они не будут загромождать поток процессов. Но они все равно будут там и могут быть указаны в коде и задачах.
Если вы это сделаете, и вы используете задачи, обратите внимание, что было бы сложно разработать, как использовать выходные данные из задачи в качестве ввода для другого, если вы не видите набор данных для его выбора. Если у вас есть проблемы с этим, прокомментируйте эту запись, и мы можем решить эту проблему.
Обратите внимание, что это префикс "_TO" - это недокументированная "скрытая" функция, которая должна быть устарела в 9.3 - см. этот блог для подробности.
Ответ 2
Если вы установите для параметра "Максимальное количество наборов выходных данных для добавления в проект" (в разделе "Общие итоги" ) значение "0", оно не добавит каких-либо наборов данных в проект, но они все равно будут доступны для просмотра из Server → Library view (они будут добавлены в поток в точке, которую вы запрашиваете).
Ответ 3
Я знаю, что этот вопрос уже полтора года, но если вы работаете с промежуточными таблицами, которые можно удалить после получения окончательных результатов, SAS EG имеет встроенный макрос, который вы можете использовать для удаления этих таблиц:
%_eg_conditional_dropds([table1], [table2], ... ,[table-n]);