複数のデータテーブルを結合しようとすると問題が頻繁に発生しますが、何が欠けているのかわかりません。
最も一般的には、日付を照合してテーブルを結合しようとしています。 これで問題がない場合もあれば、かなり苦労して、参加ダイアログ内でさまざまなオプションを試さなければならない場合もあります。
通常、マシンデータをログに記録する数千行のテーブルAがあります。 各行にはDateTimeスタンプがあります。 DateTime文字列の最初の10文字でsubstr()コマンドを使用して日付列を作成し、YYYY-MM-DD形式の日付列を作成します。 各日付は、何千もの個別の行に関連付けられている場合があります。
表Bは、日ごとの製品のリストです。
テーブルAとテーブルBを結合して、テーブルAの個々の行に製品タグがラベル付けされるようにします(たとえば、テーブルAに100日分のデータを表す150,000行がある場合、テーブルBには100行の製品があります。日付、表Cは元のデータの150,000行であり、製品ラベルは表Bから取得されています。) 私はこれまで何度もこれを成功させてきましたが、時々それを複製する際に問題が発生し、その理由がわかりません。
私がすでに試したいくつかのこと:
-YYYY-MM-DDデータをYYYY-MM-DDH:M:Sデータと一致させようとしていないことを確認します
-DateTime列から日付データを抽出するために使用される式が完全に一致することを確認しました
-日付列の出力データを両方のテーブルの新しい列にコピーし、それを照合して、数式で発生する可能性のある問題を回避します
-文字列を表すためにさまざまなデータ/モデリングタイプを試しました
これらのすべては、成功した結合のないテーブルを私に与えました。 ここで何が欠けているのか、またはテーブル結合の一般的な「ベストプラクティスのヒント」について何か考えはありますか? 私はJMPのドキュメントを読み、過去にテーブル結合を使用して成功しましたが、ここで何が起こっているのかをよりよく理解したいと考えています。 ありがとう
各日付列をコピーしてExcelに貼り付けてから、両方のテーブルのJMPに再コピーして貼り付けることで機能するようになりました。 ただし、これが問題になる原因となっているここで何が起こっているのかを理解したいと思います。
こんにちは、
希望する結果が得られないように見える結合の例はありますか? もしそうなら、あなたが以下を添付するならば、私たちは何が起こっているのか、そしてどのようにアドバイスするのかについてより良い考えを持っていると信じています:
- テーブルAとテーブルB(もちろん、機密データが含まれている場合はサニタイズされます)。 これらは部分的である可能性があります...大規模なテーブルをアップロードする必要はありません。
- 「ソース」スクリプトがそのままの(悪い)テーブルC
- 成功したテーブル「C」の少なくとも数行...少なくとも、成功した結合はどのように見えるか。 または、これの代わりに、結合されたテーブルCの何が問題になっているのかを説明します(つまり、「行21は正しくないため、...」または「これらの要素を含む行があるはずですが、ありません...」)
結合が横向きになる方法はたくさんあります...これは、特定のケースを理解するのに役立ちます。
乾杯、
ブレイディ
タイムスタンプデータは、特定の日の値に異なる時間が含まれる可能性があるため、問題を引き起こす可能性がありますが、データの表示に使用されている数式が「日付のみ」の表示であり、時間コンポーネントが表示されていない場合、ユーザーはあると考えることができます。一致しますが、実際の数値は異なります。
文字列に変換する場合は、変換に使用する形式を確認することが重要です。私が重要だと思う他の項目は、潜在的な進行または空白スペースの後にあります。したがって、文字列に変換するときに行うことは、Trim()関数を使用して、これらの潜在的な空白スペースを削除することです。