2010-06-03 112 views
3

在SPSS 11中,可以指定相對路徑。例如:在SPSS中指定相對路徑18

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

這工作,因爲很顯然,SPSS 11將工作文件夾到源.SPS文件的保存路徑。似乎SPSS 18總是將其工作文件夾設置爲SPSS自身的安裝文件夾。這不完全相同。

是否有更改此行爲的選項?或者我堅持將所有內容都改爲絕對文件名?

回答

4

而不是相對路徑,你可以定義一個目錄路徑,並用它內部的其他文件句柄的聲明,以節省打字:

文件句柄目錄路徑/ NAME =「C: \ Directory \ Path \'。
文件句柄myFile /NAME='directoryPath/fileName.xyz'。
GET FILE ='myFile'。

這將得到文件:C:\ Directory \ Path \ fileName.xyz。

斜線的方向可能很重要。

(Works in version 17)

+0

感謝您的回覆。我已經在使用此作爲解決方法。 – exhuma 2010-10-08 07:40:57

2

如果使用INSERT命令運行sps文件,它可以選擇將工作目錄更改爲該位置。

您可以使用HOST命令來取消驅動器盤符(在PC上)並引用所有內容。

您可以將文件句柄定義到公共根位置並將其用於文件引用。

您可以使用Python可編程性來查找活動語法窗口的路徑併發出SPSS CD命令來適當地設置後端工作目錄。

HTH, 喬恩·佩克

+0

什麼?Python支持?!時髦...我沒有太多的SPSS經驗,Python另一方面... :)我肯定會看看。 – exhuma 2010-06-04 06:25:42

+0

經過第一次看,python似乎不是一個令人滿意的答案。接下來我將看看環境變量。認爲'COMPUTERNAME'可能會有所幫助。 'SHOW ENVIRONMENT.'顯示變量,但我怎樣才能到達其中的一個? – exhuma 2010-06-04 06:51:31

2

使用Python,你可以得到當前語法窗口(或者任何其他一個)的完整路徑,並得到其路徑。使用該命令,您可以發出SPSS cd命令來相應地更改後端工作目錄。

但是,如果您定義了一個環境變量,則可以在SPSS中的文件規範中使用它。

p.s. SPSS爲Python(以及R和.NET語言)提供了一套廣泛的apis和helper模塊。您可以從SPSS Developer Central(www.spss.com/devcentral)獲取有關此信息。一旦您擁有基本的SPSS Statistics產品,所有的語言擴展都是免費的。

問候, 喬恩·佩克

+0

感謝鏈接到devcentral。不幸的是,我現在必須研究其他事情。一有空閒時間,我會試一試。 – exhuma 2010-06-29 14:15:24

0

或者使用「CD」命令更改默認工作目錄。另請參見:

http://www.spss-tutorials.com/change-your-working-directory/

例如,如果您的默認目錄爲C:\項目,然後獲取文件 '數據\ data_file.sav'。將從C:\ project \ data打開data_file.sav。

然後,幾分鐘後,我遇到了這個小python腳本從jignesh-sutar(見這裏:SPSS syntax - use path of the file

隨着他的Python代碼,你可以使用語法文件的路徑爲出發點對所有的你的語法中的路徑

+1

o我現在看到Jon Peck在他的回覆中也包含了CD命令。 – frettiggestoord 2016-06-16 08:33:01