Указание относительных путей в SPSS 18 - PullRequest
3 голосов
/ 03 июня 2010

В SPSS 11 можно было указывать относительные пути. Пример:

FILE HANDLE myfile='..\..\data\current.txt' /LRECL=533.
DATA LIST FILE=myfile /
...

Это сработало, потому что, очевидно, SPSS 11 установил в рабочей папке путь, по которому сохраняется исходный файл .SPS. Кажется, что SPSS 18 всегда устанавливает свою рабочую папку в папку установки самой SPSS. Что совсем не одно и то же.

Есть ли возможность изменить это поведение? Или я застрял с изменением всего на абсолютные имена файлов?

Ответы [ 4 ]

4 голосов
/ 10 сентября 2010

Вместо относительного пути вы можете определить путь к каталогу и использовать его в других описаниях файловых дескрипторов для сохранения ввода:

FILE HANDLE directoryPath / NAME = 'C: \ Directory \ Path \'.
ОБРАБОТКА ФАЙЛА myFile /NAME='directoryPath/fileName.xyz '.
GET FILE = 'myFile'.

Будет получен файл: C: \ Directory \ Path \ fileName.xyz.

Направление слешей может быть важным.

(работает в версии 17)

2 голосов
/ 29 июня 2010

С помощью Python вы можете получить полный путь к текущему окну синтаксиса (или любому другому) и получить его путь. Используя это, вы можете выполнить команду SPSS cd, чтобы соответствующим образом изменить рабочий каталог бэкэнда.

Однако, если вы определяете переменную среды, вы можете использовать ее в спецификациях файлов в SPSS.

p.s. SPSS имеет обширный набор apis и вспомогательных модулей для Python (а также для языков R и .NET). Вы можете получить информацию об этом в SPSS Developer Central, www.spss.com/devcentral. Все языковые расширения бесплатны, если у вас есть базовый продукт SPSS Statistics.

С уважением, Джон Пек

2 голосов
/ 04 июня 2010

Если вы используете команду INSERT для запуска файла sps, у него есть возможность изменить рабочий каталог на это место.

Вы можете использовать команду HOST, чтобы ПОДПИСАТЬ букву диска (на ПК) и ссылаться на все через это.

Вы можете определить РУЧКУ ФАЙЛА для общего корневого местоположения и использовать его в ссылках на файл.

Вы можете использовать программируемость Python, чтобы найти путь к активному окну синтаксиса и выполнить команду SPSS CD, чтобы соответствующим образом установить рабочий каталог бэкэнда.

НТН, Джон Пек

0 голосов
/ 16 июня 2016

Или используйте команду "CD", чтобы изменить рабочий каталог по умолчанию. Смотри также:

http://www.spss -tutorials.com / переключающий ваш-рабочий каталог /

Например, если каталог по умолчанию - C: \ project, тогда ПОЛУЧИТЕ ФАЙЛ 'data \ data_file.sav'. откроет data_file.sav из C: \ project \ data.

А потом, через несколько минут, я наткнулся на этот маленький скрипт на Python из jignesh-sutar (см. Здесь: Синтаксис SPSS - используйте путь к файлу .

С его кодом Python вы можете использовать путь к файлу синтаксиса в качестве отправной точки для всех путей в вашем синтаксисе.

...