Date to Nominal
概要
この演算子は、指定された日付形式文字列に関して指定された日付属性の日付値を解析し、値を公称値に変換します。
詳細
Date to Nominalオペレーターは、指定された日付属性を変換し、ユーザーが指定した形式で新しい名義属性を書き込みます。この変換は、 日付形式パラメーターで指定された指定の日付形式文字列に関して行われます。この演算子は、タイムベースのOLAPがタイムスタンプの粒度を日から週または月に変更するのに役立ちます。日付属性は、 属性名パラメーターによって選択されます。 keep old属性パラメーターがtrueに設定されていない場合、古い日付属性は削除され、新しい名義属性に置き換えられます。この演算子を適切に使用するには、日付と時刻のパターンを理解することが非常に重要です。
日付と時刻のパターン
このセクションでは、日付と時刻のパターンについて説明します。特に日付形式パラメータで日付形式文字列を指定するには、日付と時刻のパターンを理解する必要があります。日付と時刻のパターン文字列内で、「A」から「Z」および「a」から「z」の引用符で囲まれていない文字は、日付または時刻の構成要素を表すパターン文字として解釈されます。テキストを単一引用符( ‘)を使用して引用すると、日付または時刻コンポーネントとして解釈されるのを回避できます。他のすべての文字は、日付または時刻のコンポーネントとして解釈されません。解析中に入力文字列と単純に照合されます。
定義済みのパターン文字の簡単な説明を次に示します。 「テキスト」、「数値」、「年」、「月」などの形式タイプについては、このセクションの後で詳しく説明します。
- G:このパターン文字は、時代指定子です。例:AD、BCなど。「テキスト」形式タイプの規則に従います。
- y:このパターン文字は年を表します。 yyは2桁で年を表します(例:96)。yyyyは4桁で年を表します(例:1996)。このパターン文字は、 ‘Year’形式タイプの規則に従います。
- M:このパターン文字は、年の月を表します。 ‘Month’形式タイプの規則に従います。月は次のように表すことができます。例えば; 3月、3月、03など
- w:このパターン文字は、年の週番号を表します。 「数値」形式タイプの規則に従います。たとえば、1月の最初の週は01として表され、12月の最後の週は52として表されます。
- W:このパターン文字は、月の週番号を表します。 「数値」形式タイプの規則に従います。たとえば、1月の最初の週は01として表され、12月の第4週は04として表されます。
- D:このパターン文字は、年の日番号を表します。 「数値」形式タイプの規則に従います。たとえば、1月の最初の日は01、12月の最後の日は365(うるう年の場合は366)として表すことができます。
- d:このパターン文字は、月の日番号を表します。 「数値」形式タイプの規則に従います。たとえば、1月の最初の日は01として表され、12月の最後の日は31として表されます。
- F:このパターン文字は、曜日を表します。 「数値」形式タイプの規則に従います。
- E:このパターン文字は、曜日の名前を表します。 「テキスト」形式タイプの規則に従います。たとえば、火曜日や火曜日など。
- a:このパターン文字は、12時間制のAM / PM部分を表します。 「テキスト」形式タイプの規則に従います。
- H:このパターン文字は、時間(0から23)を表します。 「数値」形式タイプの規則に従います。
- k:このパターン文字は、時間(1〜24)を表します。 「数値」形式タイプの規則に従います。
- K:このパターン文字は、12時間制の時刻(0〜11)を表します。 「数値」形式タイプの規則に従います。
- h:このパターン文字は、12時間制の時刻(1〜12)を表します。 「数値」形式タイプの規則に従います。
- m:このパターン文字は、時間の分(0〜59)を表します。 「数値」形式タイプの規則に従います。
- s:このパターン文字は、分(0〜59)の秒を表します。 「数値」形式タイプの規則に従います。
- S:このパターン文字は、秒のミリ秒を表します(0〜999)。 「数値」形式タイプの規則に従います。
- z:このパターン文字はタイムゾーンを表します。 「一般的なタイムゾーン」形式タイプの規則に従います。例には、太平洋標準時、PST、GMT-08:00などが含まれます。
- Z:このパターン文字はタイムゾーンを表します。 「RFC 822タイムゾーン」形式タイプの規則に従います。例には、-0800などが含まれます。
「A」から「Z」および「a」から「z」までの他のすべての文字は予約されていることに注意してください。通常、パターン文字は繰り返されます。パターン文字は、正確な表示を決定するためです。さまざまな形式タイプの説明を次に示します 。
- テキスト:書式設定では、パターン文字の数が4以上の場合、完全な形式が使用されます。それ以外の場合は、短い形式または省略形が使用されます(使用可能な場合)。解析の場合、両方の形式はパターン文字の数に関係なく受け入れられます。
- 番号:書式設定の場合、パターン文字の数は最小桁数です。この最小桁数より短い数値は、この量までゼロが埋め込まれます。たとえば、最小桁数が3の場合、5が005に変更されます。解析の場合、2つの隣接するフィールドを分離する必要がない限り、パターン文字の数は無視されます。
- 年:基礎となるカレンダーがグレゴリオ暦の場合、次の規則が適用されます。フォーマットの場合、パターン文字の数が2の場合、年は2桁に切り捨てられます。それ以外の場合は、「数値」形式タイプとして解釈されます。解析の場合、パターン文字の数が2を超えると、桁数に関係なく、年は文字どおりに解釈されます。したがって、パターン「MM / dd / yyyy」を使用すると、ストリング「01/11/12」は「Jan 11、12 A.D」に解析されます。短縮年パターン(「y」または「yy」)を使用した解析の場合、この演算子は、ある世紀に対する短縮年を解釈する必要があります。これは、演算子が作成された時刻の前後80年以内に日付を調整することによりこれを行います。たとえば、「MM / dd / yy」のパターンと1997年1月1日に作成された演算子を使用すると、文字列「01/11/12」は2012年1月11日と解釈され、文字列「05/04/64 ‘は1964年5月4日と解釈されます。解析中は、正確に2桁の文字列のみが既定の世紀に解析されます。 1桁の文字列、3桁以上の文字列、またはすべての数字ではない2桁の文字列(たとえば、 ‘-1’)など、その他の数値文字列は、文字どおりに解釈されます。そのため、「01/02/3」または「01/02/003」は、「Jan 2、3 AD」と同じパターンを使用して解析されます。同様に、「01/02 / -3」は「Jan 2、4 BC」として解析されます。それ以外の場合、基礎となるカレンダーがグレゴリオ暦ではない場合、カレンダーシステム固有のフォームが適用されます。パターン文字の数が4以上の場合、カレンダー固有の長い形式が使用されます。そうでない場合は、カレンダーの短い形式または短縮形式が使用されます。
- 月:パターン文字の数が3以上の場合、月は「テキスト」形式タイプとして解釈されます。それ以外の場合、「数字」形式タイプとして解釈されます。
- 一般的なタイムゾーン:タイムゾーンは、名前がある場合、「テキスト」形式タイプとして解釈されます。 GMTオフセット値を表すことにより、タイムゾーンを定義することができます。 RFC 822タイムゾーンも使用できます。
- RFC 822タイムゾーン:書式設定には、RFC 822 4桁のタイムゾーン形式が使用されます。一般的なタイムゾーンも受け入れられます。
この演算子は、 ロケールパラメータを定義することにより、ローカライズされた日付と時刻のパターン文字列もサポートします。これらの文字列では、上記のパターン文字を他のロケール依存のパターン文字に置き換えることができます。
次の例は、米国ロケールで日付および時刻パターンがどのように解釈されるかを示しています。指定された日付と時刻は、米国太平洋時間帯の現地時間2001-07-04 12:08:56です。
- ‘yyyy.MM.dd G’ at ‘HH:mm:ss z’:2001.07.04 AD at 12:08:56 PDT
- 「EEE、MMM d、yy」:01年7月4日水曜日
- ‘h:mm a’:12:08 PM
- ‘hh’ oclock ‘a、zzzz’:午後12時、太平洋夏時間
- ‘K:mm a、z’:0:08 PM、PDT
- ‘yyyy.MMMMM.dd GGG hh:mm aaa’:2001.July.04 AD 12:08 PM
- 「EEE、d MMM yyyy HH:mm:ss Z」:2001年7月4日水曜日12:08:56 -0700
- 「yyMMddHHmmssZ」:010704120856-0700
- ‘yyyy-MM-dd’T’HH:mm:ss.SSSZ’:2001-07-04T12:08:56.235-0700
入力
- サンプル入力 (IOObject)この入力ポートには、ExampleSetが必要です。これは、添付のプロセス例のサブプロセス演算子の出力です。他の演算子の出力も入力として使用できます。 ExampleSetには少なくとも1つの日付属性が必要です。そのような属性がない場合、この演算子の使用は意味をなさないためです。
出力
- サンプル出力(IOObject)選択された日付属性は、指定された日付形式文字列に従って名義属性に変換され、結果のExampleSetがこのポートを介して配信されます。
- オリジナル(IOObject)入力として指定されたExampleSetは、このポートを介して出力に変更せずに渡されます。これは通常、別の演算子で同じExampleSetを再利用するため、または結果ワークスペースでExampleSetを表示するために使用されます。
パラメーター
- attribute_name日付属性の名前はここで指定されます。メタデータがわかっている場合は、 属性名パラメーターのドロップダウンボックスから属性名を選択できます。 範囲:文字列
- date_formatこれは、この演算子の最も重要なパラメーターです。目的の名義属性の日時形式を指定します。この日付フォーマット文字列は、日付属性のどの部分を名義属性に格納するかを指定します。日付書式文字列については、この演算子の説明で詳しく説明します。 範囲:
- localeこれはエキスパートパラメータです。ロケールの長いリストが提供されます。ユーザーはそれらのいずれかを選択できます。 範囲:選択
- keep_old_attributeこのパラメーターは、元の日付属性を保持するか破棄するかを示します。 範囲:ブール
チュートリアルプロセス
Date to Nominal演算子の概要
このプロセス例は、サブプロセス演算子で始まります。サブプロセスは、単一の属性を持つExampleSetを提供します。属性の名前は「deadline_date」です。属性のタイプは日付です。 ExampleSetを表示できるように、ブレークポイントがここに挿入されます。ご覧のとおり、この属性のすべての例には日付と時刻の両方の情報が含まれています。このExampleSetにDate to Nominal演算子を適用して、「deadline_date」属性のタイプをdateから名義タイプに変更します。 Date to Nominal演算子のパラメーターを見てください。属性名パラメーターは「deadline_date」に設定されます。日付形式パラメーターは「EEEE」に設定されています。ここに、この日付形式ストリングの説明があります。
「E」は、曜日の名前の表現に使用されるパターン文字です。説明で説明したように、パターン文字の数が4以上の場合、完全な形式が使用されます。したがって、「EEEE」は、月曜日、火曜日など、曜日を完全な形式で表すために使用されます。したがって、日付属性は、可能な値として曜日のみを含む名義属性に変更されます。この日付フォーマット文字列は、入力ExampleSetの新しいノミナル属性のノミナル値のフォーマットを指定するために使用されることに注意してください。