3

SPSS 11 では、相対パスを指定できました。例:

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

どうやら、SPSS 11が作業フォルダーをソース.SPSファイルが保存されているパスに設定したため、これは機能しました。SPSS 18 は、常に作業フォルダーを SPSS 自体のインストール フォルダーに設定しているようです。これはまったく同じではありません。

この動作を変更するオプションはありますか? それとも、すべてを絶対ファイル名に変更することにこだわっていますか?

4

4 に答える 4

5

相対パスの代わりに、ディレクトリ パスを定義し、それを他のファイル ハンドル宣言内で使用して、入力を節約できます。

ファイルハンドル directoryPath /NAME='C:\Directory\Path\' .
ファイルハンドル myFile /NAME='directoryPath/fileName.xyz' .
GET FILE='myFile' .

これにより、C:\Directory\Path\fileName.xyz というファイルが取得されます。

スラッシュの方向が重要な場合があります。

(バージョン 17 で動作)

于 2010-09-10T17:37:12.053 に答える
2

Python では、現在のシンタックス ウィンドウ (またはその他のウィンドウ) のフル パスを取得し、そのパスを取得できます。これを使用して、SPSS cd コマンドを発行して、それに応じてバックエンドの作業ディレクトリを変更できます。

ただし、環境変数を定義すると、それを SPSS 内のファイル仕様で使用できます。

ps SPSS には、Python (および R 言語と .NET 言語) 用の API とヘルパー モジュールの広範なセットがあります。これに関する情報は、SPSS Developer Central (www.spss.com/devcentral) から入手できます。ベースの SPSS Statistics 製品があれば、すべての言語拡張は無料です。

よろしく、 ジョン・ペック

于 2010-06-28T23:10:22.507 に答える
2

INSERT コマンドを使用して sps ファイルを実行する場合、作業ディレクトリをその場所に変更するオプションがあります。

HOST コマンドを使用して、(PC 上で) ドライブ文字を SUBST し、それを介してすべてを参照することができます。

FILE HANDLE を共通のルートの場所に定義し、それをファイル参照で使用できます。

Python のプログラミング機能を使用してアクティブなシンタックス ウィンドウへのパスを見つけ、SPSS CD コマンドを発行してバックエンドの作業ディレクトリを適切に設定することができます。

HTH、ジョン・ペック

于 2010-06-03T23:11:23.823 に答える
0

または、「CD」コマンドを使用して、デフォルトの作業ディレクトリを変更します。以下も参照してください。

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

たとえば、デフォルト ディレクトリが C:\project の場合、GET FILE 'data\data_file.sav' を実行します。C:\project\data から data_file.sav を開きます。

そして、数分後、jignesh-sutarからこの小さな python スクリプトに出くわしました (ここを参照してください: SPSS 構文 - ファイルのパスを使用します

彼の python コードを使用すると、構文ファイルのパスを構文のすべてのパスの開始点として使用できます。

于 2016-06-16T08:30:50.737 に答える