1

こんにちは私はこのサイトを初めて利用するので、この質問を十分に検索しなかった場合はご容赦ください。

基本的に私は、X線が通常の勤務時間中に実行されたかどうかという変数の1つである研究プロジェクトを行っています。勤務時間には、月曜日から金曜日の午前8時から午後5時までが含まれます。

個別の変数-[date+time(dd.mm.yyyy hh:mm)]-[time(hh:mm)]を使用して、各X線の日付と時刻を入力しました。

この情報を手動で入力することを計画していましたが、これを自動化する方法は確かにあります。SPSSの経験はほとんどないので、素敵な人に手伝ってもらうべきだと思いました。

前もって感謝します

4

1 に答える 1

0

以下では、xdate関数を使用して曜日を抽出する簡単な例を示し、次にifステートメントを作成してこれらの日時が内にあるかどうかを識別しますworkhours

*Making example data.
data list free / xray_date (ADATE10) xray_time (TIME5).
begin data
7/6/2011 2:21
10/11/2011 15:42
07/06/2011 02:21
3/15/2011 0:21
end data.

*Here is example to find day of week name, 1 is Sunday and 7 is Saturday.
compute day_week = Xdate.Wkday(xray_date).

*to identify times of day in an if statement we need to make specific variables.
string begin_time end_time (A5).
compute begin_time = "08:00".
compute end_time = "17:00".
alter type begin_time end_time (TIME5).

*Then you can just make an if statement to identify whether a date-time meets your requirements.
compute workhours = 0.
if day_week >= 2 and day_week <= 6 and xray_time >= begin_time and xray_time <= end_time workhours = 1.

この特定の例では、コマンドを実行するとlist all.、結果は次のようになります。

 xray_date xray_time day_week begin_time end_time workhours 

07/06/2011    2:21    4.00000     8:00     17:00     .00000 
10/11/2011   15:42    3.00000     8:00     17:00    1.00000 
07/06/2011    2:21    4.00000     8:00     17:00     .00000 
03/15/2011    0:21    3.00000     8:00     17:00     .00000

10/11/2011火曜日であり、勤務時間内であるため、レコードが適切に分類されていることがわかります。他のすべてのレコードは午前8時から午後5時の間ではないため、workhours変数のゼロ値に初期化されます。

于 2012-06-29T12:04:11.870 に答える