スピーカー | 成績証明書 |
| 間違い | JMP ディスカバリー サミットへようこそ。 |
| 私は JMP プロダクト マネージャーの Mia Stephens です。JMP システム エンジニアの Jordan Hiller と一緒に来ています。 そして今日は、データキュレーションワークフローの自動化についてお話します。 |
| 話を 2 つの部分に分けてお話します。 まずは分析ワークフローと、データ キュレーションがこのワークフローのどこに適合するかについて話して、舞台を整えることにします。 |
| それから、この話の核心となる部分についてはジョーダンに任せます。 再現可能なデータキュレーションの必要性について説明します。 |
| JMP 15 でこれを行う方法を見ていきます。 次に、データ キュレーションの手順と、分析用にデータを準備するために実行するアクションを記録するための、JMP 16 のいくつかの新機能を少しだけ見ていきます。 |
| それでは、分析ワークフローについて考えてみましょう。 ここで、一般的なワークフローを 1 つ紹介します。 そしてもちろん、すべてはビジネス上の問題が何であるかを定義し、解決しようとしている問題を理解することから始まります。 |
| 次に、データをコンパイルする必要があります。 そしてもちろん、さまざまなソースからデータをコンパイルし、これらのデータを JMP に取り込むこともできます。 そして最終的には、結果を共有し、発見したことを他の人に伝えることができる必要があります。 |
| おそらく、このプロセスで最も時間のかかる部分は、分析用のデータの準備またはデータのキュレーションです。 |
| では、データキュレーションとは正確には何でしょうか? データのキュレーションとは、データが分析上の発見を促進するのに役立つことを保証することです。 基本的に、私たちはその日のうちに問題を解決できるようにしたいと考えています。 |
| これは主に、データの編成、データ構造、およびデータ品質の問題の解決に関するものです。 |
| データに関する問題や一般的な問題について考えると、通常は 4 つのバケットに分類されます。 間違った形式、不完全なデータ、欠落しているデータ、または汚いまたは乱雑なデータがある可能性があります。 |
| この種の問題について話し、データ内でこれらの問題をどのように特定するかを説明するために、コース STIPS から借用します。 |
| STIPS に詳しくない場合は、STIPS は当社の無料オンライン コース「産業問題解決のための統計的思考」であり、7 つの構成で構成されています。 |
| 個別モジュール。 モジュール 2 は、探索的なデータ分析に関するものです。 |
| また、探索的データ分析とデータ キュレーションはインタラクティブで反復的な性質があるため、このモジュールの最後のレッスンは分析のためのデータの準備です。 そして、これはすべて、データ内の品質の問題を特定し、データを管理するために実行できる手順を特定することに関するものです。 |
| それでは、一般的な問題についてもう少し詳しく説明しましょう。 書式設定が正しくありません。 では、間違った書式設定とは何を意味するのでしょうか? |
| これは、データが間違った形式であるか、分析するには間違った形式である場合です。 これはデータテーブル全体に適用できます。 したがって、たとえば、データを別々の列に入れても、分析するにはデータを 1 つの列に積み重ねる必要があります。 |
| これは個々の変数に適用できます。 モデリング タイプまたはデータ タイプが間違っているか、JMP でそのようにフォーマットされていない日付データ、日付または時刻のデータが含まれている可能性があります。 |
| 化粧品にもなります。 データ テーブルで応答変数を見つけやすくするために、データ テーブルの先頭から応答変数を削除したり、変数の名前を変更したり、因子をグループ化したりすることを選択できます。 |
| 不完全なデータとは、データが不足していることを意味します。 また、これは重要な変数に関するものである可能性があるため、最終的に問題の解決に役立つ変数に関するデータを取得していない可能性があります。 |
| または変数の組み合わせで。 あるいは、単に十分な観測値がない、データテーブルに十分なデータがないことを意味している可能性があります。 |
| データ欠損とは、変数の値が利用できない場合です。 そして、これはさまざまな形をとる可能性があります。 |
| そして最後に、データが汚い、または汚いのは、観測値や変数に問題がある場合です。 |
| したがって、データが間違っている可能性があります。 単に値が間違っているだけです。 人々がデータを記録したり、システムにデータを入力したりする方法に関して矛盾が生じる可能性があります。 |
| データが不正確である可能性、対応可能な測定システムがない可能性、エラーまたはタイプミスがある可能性があります。 |
| データが古い可能性があります。 そのため、現在は使用されていない施設やマシンに関する情報を収集している可能性があります。 |
| 時代遅れかもしれません。 したがって、データを収集してからプロセスが大幅に変更され、データが役に立たなくなった可能性があります。 |
| データは検閲または切り捨てられる可能性があります。 相互に冗長な列が存在する場合があります。 基本情報の内容が同じであるか、行が重複しています。 したがって、汚くて乱雑なデータはさまざまな形をとる可能性があります。 |
| では、潜在的な問題をどのように特定すればよいでしょうか? データを確認すると、問題が特定され始めます。 実際、このプロセスは反復的であり、データをグラフや数値で調査し始めると、修正すべき問題である可能性のあるものが見えてきます。 |
| または解決します。 したがって、データ テーブルをスキャンすることから始めるのが良いでしょう。 データテーブルをスキャンすると、明らかな問題が見つかることがよくあります。 |
| この例では、コンポーネントと呼ばれる STIPS コースのデータを使用します。シナリオは、ある企業が小型コンポーネントを製造し、歩留まりを向上させようとしているというものです。 |
| そして、15 列を使用して 369 バッチの部品に関するデータを収集しました。 したがって、データを確認すると、すぐにいくつかの非常に明白な問題がわかります。 |
| データテーブルの上部を見ると、これらの素晴らしい小さなグラフを見ると、分布の形状がわかります。 価値観が見えてきます。 |
| たとえば、バッチ番号のヒストグラムが表示されます。 バッチ番号は、連続したものではなく、識別子であると考えられるものです。 つまり、データが正しくコーディングされていないことがわかります。 |
| 廃棄数を見ると分布の形が見えてきます。 そこには、ありえないかもしれない負の値があることもわかります。 |
| 2 つの値を持つプロセスのヒストグラムが表示されます。これにより、プロセスのモデリング タイプを連続から公称に変更する必要があることがわかります。 |
| 柱パネルを見るとさらによくわかります。 したがって、たとえば、バッチ番号と部品番号は両方とも連続したものとしてコード化されます。 これらはおそらく名目上のものです |
| データ自体を見てみると、他の問題も見えてきます。 たとえば、湿度は連続的であると考えられますが、値が N/A である観測値がいくつかあります。 |
| また、JMP はテキストを参照するため、列は公称としてコード化されているため、これを修正する必要があるかもしれません。 |
| サプライヤーにいくつかの問題があることがわかります。 いくつかの欠落値といくつかのタイプミスがあります。 そして、温度に注目してください。すべてのドットは、これらの行の温度の値が欠落していることを示しています。 したがって、これはさらに調査する必要がある問題です。 |
| したがって、データ テーブルをスキャンするだけで多くの問題を特定でき、一度に 1 つの変数ずつデータを視覚化すると、さらに多くの潜在的な問題を特定できます。 |
| 非常に優れた出発点であり、私がこのツールをとても気に入っているのは、列ビューアです。 列ビューアには、選択したすべての変数の数値概要が表示されます。 |
| たとえば、ここではいくつかの値が欠落しています。 温度については、369 個の値のうち 265 個が欠落していることがわかります。 したがって、温度が重要な要素であると考える場合、これは潜在的に問題となる可能性があります。 |
| データ テーブルに記録されている値に関する潜在的な問題も確認できます。 したがって、たとえば、不良率と不良数は両方とも負の値になります。 |
| これが物理的に不可能な場合は、データを収集したシステムに戻って調査する必要があるかもしれません。 |
| 計算された統計の一部を見ると、他の問題もわかります。 したがって、たとえば、バッチ番号と部品番号は実際にはカテゴリ的である必要があります。 |
| 平均的なバッチ番号や平均的な部品番号を知ることは意味がありません。 つまり、データ テーブルに戻ってモデリング タイプを変更する必要があることがわかります。 |
| ディストリビューションは、データと潜在的な問題について多くのことを教えてくれます。 分布の形状、中心化、広がりがわかります。 タイプミスも見られます。 |
| ここでの顧客数、ここで特に問題となるのは、4 ~ 5 人の大手顧客といくつかの小規模顧客が存在することです。 顧客番号と分析を使用する場合は、recode を使用して、小規模な顧客の一部を別のカテゴリにグループ化するとよいでしょう。 |
| 湿度の棒グラフがありますが、これは列に N/A 値があるためです。 データ テーブルをざっと見たときにはそれが分からなかったかもしれませんが、ここで分布を見ると非常にはっきりと見ることができます。 |
| サプライヤーのタイプミスがはっきりとわかります。 |
| 連続変数を観察すると、形状、中心化、広がりを確認できますが、これらの変数内でいくつかの異常な観測結果も確認できます。 |
| したがって、データを一度に 1 つの変数で調べた後は、一度に 2 つ以上の変数でデータを調査するのが自然な流れです。 |
| たとえば、グラフ ビルダーでスクラップ率とスクラップ数を調べてみるとします。 |
| パターンへの関心が見られます。 したがって、これらのバンドが表示されており、このパターンが発生している理由を説明するのに役立つ何かがデータ テーブルにある可能性があります。 |
| 実際、バッチサイズごとに色分けすると、それが理にかなっています。 したがって、5000 個の部品を含むバッチがある場合、200 個のみのバッチよりもスクラップ部品が発生する可能性が高くなります。 |
| 下部に奇妙な観察結果があることもわかります。 実際、これらはスクラップ数が負の値を示した観測結果であり、このグラフでは非常に際立っています。 |
| また、列スイッチャーまたはデータ フィルターを追加すると、これらのグラフにさらなる次元を追加できます。 だから私はプレッシャーを見ることができます |
| たとえば...の代わりに |
| まあ、プレッシャーを見て、留まるように切り替えることもできます。 ここで私が探しているのは、これらの変数と応答の間の一般的な関係を理解することです。 |
| そして、圧力がスクラップ率と正の関係があることがわかります。 そして、dwell に切り替えると、おそらく次のような関係はないことがわかります。 |
| 滞留およびスクラップ率または温度。 したがって、これらの変数は問題の解決にはそれほど有益ではない可能性があります。 |
| しかし、速度に注目してください。速度には負の関係があります。 また、上部には調査したいと思われるいくつかの異常な観察結果もあります。 |
| したがって、データを見るだけで、データについて多くのことを学ぶことができます。 |
| そしてもちろん、実際にはこの議論の範囲を超えている外れ値や欠損値を調査するためのより高度なツールがあります。 |
| そして、分析フェーズに入り、データの分析やモデルの構築を開始すると、対処する必要がある潜在的な問題についてさらに多くのことを学ぶことができます。 |
| 重要なのは、データを調べて問題を特定するときに、それらの問題をメモしておくことです。 |
| そのうちのいくつかは、やっていくうちに解決できるかもしれません。 したがって、プロセスを進めるにつれて、データを再形成してクリーンアップできる可能性があります。 |
| ただし、後で分析を繰り返す必要がある場合、または新しいデータや他のデータに対して分析を繰り返す場合に、その手順を繰り返しできるように、実行した手順を確実に記録しておきたいと考えています。 |
| そしてこの時点で、私は再現可能なデータキュレーションとこれが何なのかについてジョーダンに話を委ねるつもりです。 |
| ジョーダン・ヒラー | わかりました、ありがとう、ミア。 それは素晴らしかった。 そして、ポイント アンド クリックによるデータ キュレーションを達成するために JMP で何を行うかを学びました。 次に、それを再現可能にする方法について話しましょう。 |
| 再現性について懸念する理由は、データセットが新しいデータで定期的に更新されるためです。 これが 1 回限りのアクティビティであれば、ポイント アンド クリックについてあまり心配する必要はありません。 しかし、データが何度も更新されると、 |
| 毎回ポイントアンドクリックでデータキュレーションを繰り返すのは労働集約的すぎます。 |
| したがって、すべてのデータキュレーションステップを実行するスクリプトを生成する方が効率的であり、ボタンを 1 回クリックするだけでそのスクリプトを実行できます。 |
| そしてすべてを一度に行います。 したがって、効率に加えて、 |
| それはあなたのプロセスを文書化します。 自分が何をしたかの記録として役立ちます。 そのため、後から自分自身で参照して自分が何をしたかを思い出すことができます。また、あなたの後に来てこのプロセスの責任を負う人たちにとっても、それは記録となります。 |
| このプレゼンテーションの残りの部分では、ポイント アンド クリックのみでデータ キュレーション スクリプトを生成する方法を示すことが私の目標です。 |
| これを実行するためにプログラミングを行う必要がないことを願っています。 そのプログラム コードが抽出されて保存されます。それがどのように行われるかについて少し説明します。 |
| したがって、2 つの異なるセクションがあります。 データ キュレーション スクリプトを取得するために JMP 15 で現在実行できることと、来年 JMP 16 がリリースされたら実行することになります。 |
| JMP 15 には、独自の再利用可能な JSL スクリプト コードを生成するデータ キュレーション タスクがいくつかあります。 |
| ポイント アンド クリックを実行するだけで、コードを取得するテクニックがあります。 それを実証してみます。 したがって、recode のようなツールは、 |
| 計算による新しい数式列の生成、データ テーブルの再形成、これらのツールはテーブル メニューにあります。 スタック、分割、結合、連結、更新があります。 これらすべてのツール |
| JMP 15 では、ポイント アンド クリックでスクリプトを実行した後、独自のスクリプトを生成します。 |
| 独自の JSL スクリプトを生成しない他の一般的なタスクもあります。これらのタスクの実行を容易にし、再現可能にするために、 |
| また、次のタスク、主に列に関するタスク、列のデータ型の変更、モデリング型の変更、表示形式の変更などに役立ちます。 |
| データ テーブルの列の名前変更、並べ替え、削除、仕様制限や値ラベルなどの列プロパティの設定も行います。 |
| したがって、データ クリーニング スクリプト アシスタントは、JMP 15 でこれらのタスクを支援するために使用するものです。 |
| 私たちは JMP 16 のスニーク プレビューを提供する予定です。JMP 16 のログの新機能に非常に興奮しています。これは拡張ログ モードと呼ばれるものだと思います。 |
| 基本的な考え方は、JMP 16 では、通常どおりポイント アンド クリックするだけでデータ キュレーションのステップを進めることができるということです。 |
| 必要な JSL コードが自動的に生成され、記録されます。 あなたがしなければならないのは、それをつかんで保存することだけです。 とてもシンプルで本当に便利なので、それをお見せできることに興奮しています。 |
| 参考までにチートシートを示します。 JMP 15 では、これらは左側のタスク、つまり一般的なデータキュレーションタスクです。これは完全なリストではありません。 |
| 中央の列は、JMP でポイント アンド クリックによってこれらを達成する方法を示しています。 再利用可能なスクリプトを抽出する方法は右側にリストされています。 したがって、ここですべてを説明するつもりはありません。 |
| しかし、はい、これは後で参照するためのものです。 デモを始めましょう。 そして、Mia がコンポーネント データ テーブルで特定した問題のいくつかに対処する方法を示します。 JMP 15から始めます。 |
| 最初に説明するのは、列の問題のいくつかです。 |
| 変化 |
| データ型、モデリング型、そういったものです。 ここで、ポイント アンド クリックだけを考えているのであれば、 |
| JMP では、通常行うことは、たとえば湿度です。 これは皆さんの記憶に残るコラムです |
| その中にテキストが含まれているのですが、それが誤って文字列として入力されます。 そのため、ポイント アンド クリックでこれを修正するには、通常は右クリックして列情報に移動し、ここで変更に対処します。 |
| これは、JMP 15 で使用可能なスクリプトが残らない JMP タスクの 1 つです。 したがって、このために、代わりにデータ クリーニング スクリプト アシスタントを使用します。 それでは、行きましょう。 |
| これはアドイン メニューにあります。私がインストールしたので、あなたもインストールできます。 データ クリーニング スクリプト アシスタント、これに必要なツールは、クリーナーの Victor です。 これは |
| 列を変更するためのグラフィカル ユーザー インターフェイスなので、ここでデータ型とモデリング型に対処できます。 列の名前を変更したり、列の順序を変更したり、列を削除したりして、スクリプトを保存できます。 そこで、ここでいくつかの変更を加えてみましょう。 |
| 湿度については、テキストとして入力される原因となった N/A 値を含むものです。 文字変数から数値変数に変更してみます。 そして、それを名目から継続に変更します。 |
| また、バッチ番号を取得する必要がある...公称値に変更する必要があることも特定しました。部品番号も公称値に変更する必要があり、プロセスも現時点では番号になっていますが、これも変更する必要があります。 |
| 公称。 |
| 素晴らしい技術。 だからそれは私にとって役に立たないんです。 施設欄を削除しましょう。 ここでは名前をクリックして選択し、[削除] をクリックします。 |
| ミアが言及した外観上の変更をいくつか紹介します。 スクラップ率は私の表の最後にあります。 早めに動かしたいです。 次に4番目の位置に移動します |
| 顧客番号。 したがって、それを選択し、矢印を使用して顧客番号の直後の順序で上に移動します。 |
| 最後に行う変更は、圧力変数を取得し、その名前を変更することです。 |
| 私の組織のエンジニアは、この列を psi と呼びました。 それがその列に付けたい名前です。 さて、ここで加えたい変更はこれですべてです。 |
| いくつか選択しなければならないことがあります。 スクリプトをデータ テーブル自体に保存するかどうかは私が決定します。 これにより、左上のパネルに小さなスクリプト セクションが作成されます。 |
| 独自のウィンドウに保存するかどうかですが、スクリプトウィンドウに保存しましょう。 [OK] をクリックしたときに、指定したクリーニング アクションを実行するかどうかを選択することもできます。 実行を続けて「OK」をクリックしましょう。 |
| これで、これらの変更がすべて行われたことがわかります。 物事が再配置されたり、列のプロパティが変更されたりしました。 |
| 私たちにはスクリプトがあります。 それを実現するためのスクリプトがあります。 それは独自のウィンドウ内にあり、この小さなプログラムが基礎となります。 これに基づいてデータ キュレーション スクリプトを構築します。 これを保存しましょう。 デスクトップに保存してみます。 そして、これを呼び出します |
| v15 キュレーション スクリプト。 |
| モデリング タイプの変更、データ タイプの変更、名前の変更、並べ替え。 |
| これらはすべて Victor からのものです。 これをコードに文書化します。 後で読めるように、コードに小さなコメントを残すことをお勧めします。 これは Victor ツールからのものであるというメモを残しておきます。 |
| そして、DCSA から、データ クリーニング スクリプト アシスタントの Victor の場合を考えてみましょう。 ということでコメントです。 2 つのスラッシュは |
| プログラム内の行;それはコメントです。 つまり、プログラム インタプリタはそれをプログラム コードとして実行しようとしません。 それは単なる小さなメモとして認識され、上に緑色で表示されます。 |
| スクリプトに小さなコメントを残すことをお勧めします。 さて、次に進みましょう。 |
| 次に取り上げるキュレーション タスクは、このサプライヤーの列です。 ミアは、ここには対処する必要のあるいくつかの問題があることを教えてくれました。 |
| これには再コード化ツールを使用します。 Recode は、独自のスクリプトを残す JMP 15 のツールの 1 つであり、入手場所を知っておくだけで済みます。 それでは、再コードを実行してスクリプトを取得し、右クリックしてください |
| 記録します。 |
| そして、これらのデータ値を修正します。 赤い三角形から始めます。 すべてのテキストをタイトルケースに変換することから始めましょう。これにより、ここにある小文字の Hersch 値がクリーンアップされます。 |
| 余分な空白や余分なスペース文字もトリミングしましょう。 それによって、このアンダーソンのあの先頭のスペースがきれいになった。 わかった。 |
| したがって、再コード化ツールで行ったすべての変更はこのリストに記録され、必要に応じて変更を繰り返したり、元に戻したり、やり直したりして、その履歴を繰り返すことができます。 |
| わかりました。あといくつか変更する必要があります。 手動で作ります。 ハーシー家をグループ化し、コックス家をグループ化し、アンダーソン家全員をグループ化しましょう。 |
| Trutna と Worley はすでに正しいです。 最後に行うことは、これらの欠損値に対処することです。 それらを独自の行方不明カテゴリに割り当てます。 |
| それが私のレコーディングプロセスです。 やるべきことは終わった。 単にポイントしてクリックするだけなら、「再コード化」をクリックして完了です。 ただし、このスクリプトを入手する必要があることを覚えておいてください。 そのためには、赤い三角のところに行きます。 |
| スクリプト セクションに進み、このスクリプトをスクリプト ウィンドウに保存しましょう。 |
| ここでは、それが独自のスクリプト ウィンドウに保存されており、そのセクションを処理中のキュレーション スクリプトの最後に貼り付けるだけです。 |
| それでは見てみましょう。 ここからすべてを掴み取るだけだ。 実際に見る必要すらありません。 右。 プログラマーである必要はありません。Control C を一番下に貼り付けるだけです。 そして、これが赤い三角ボタンの再コードによるものであることをメモしておきます。 |
| わかりました、このウィンドウを閉じても構いません。 もう必要ありません。 そして、これらの更新をキュレーション スクリプトに保存します。 それがrecodeであり、あなたが行う方法でした |
| を入手する |
| そのためのコード。 |
| わかりました。それでは、次のタスクは計算です。 |
| 収量。 あっ、すみません。 これから行うことは、そのリコードを実際に実行することです。 スクリプトを保存したので、再コードを実行しましょう。 そして、それが、再コード化されたサプライヤー列です。 完璧。 |
| よし、収量列を計算してみよう。 これは少し冗長ですが、すでにスクラップ率がわかっています。 |
| ただし、説明のために、新しい列を計算してそのスクリプトを抽出する方法を示しましょう。 これは、JMP 15 のもう 1 つの場所で、どこを見るべきか知っていれば、スクリプトを簡単に入手できます。 そこで、収量列を作成します。 |
| 新しい列。ここをダブルクリックして、名前を列 16 から yield に変更します。 |
| そして、それに数式を割り当ててみましょう。 |
| 収率を計算するには、各バッチに含まれる良品の数を見つける必要があります。つまり、バッチ サイズから廃棄数を引いたものになります。 |
| これが、すべてのバッチで私が保有している良好なユニットの数です。 これを合計バッチサイズで割ると、収量の列が表示されます。 はい、ここでの利回りは .926 であることがわかります。 |
| スクラップ率は 0.074、1 マイナス収率です。 とても良い。 計算は正しいです。 収益列を作成したので、そのスクリプトを取得しましょう。 ここでのトリックは、右クリックして列をコピーすることです。 |
| 右クリックから列をコピーします。 |
| ペースト。 そして、それがそこにあります。 データテーブルに新しい列を追加します。 それは収量と呼ばれるもので、その計算式は次のとおりです。 |
| さて、プログラミングの知識は必要ありません、と言いましたが、ここには非常に小さな例外があると思います。 あなたはおそらくそれに気づいています |
| JSL の各ステップの最後にはセミコロンがあります。 これにより、さまざまな JSL 式が分離され、スクリプトの最後に何か新しいものを追加する場合は、間にセミコロンがあることを確認する必要があります。 したがって、セミコロンを入力するだけです。 コピー列 |
| 関数はセミコロンを追加しなかったので、手動で追加する必要があります。 |
| よし、よし。 これが収益の列です。 次に取り上げたいのはこれです。 |
| 私のプロセスには 1 と 2 のラベルが付けられています。 それはあまり友好的ではありません。 もっとわかりやすいラベルを付けたいと思います。 プロセス番号 1 を Production と呼びます。プロセス番号 2、実験的。 それを値ラベルで行います。 |
| 値ラベルは列プロパティの一例です。 列に追加できるさまざまな列プロパティの完全なリストがあります。 |
| これは測定単位のようなものです。 これは、グラフの表示順序を変更したい場合に、値の順序を使用できるのと似ています。 |
| 品質分析に管理限界、仕様限界、または履歴シグマを追加したい場合は、ここでも行うことができます。 |
| 大丈夫。 したがって、これらはすべて、列に追加する列プロパティ、つまり列に追加するメタデータです。 |
| これらの列プロパティを追加するには、データ クリーニング スクリプト アシスタントを使用して JSL スクリプトにアクセスする必要があります。 それでは、その方法をご紹介します。 まず、通常どおり、ポイント アンド クリックによって列のプロパティを追加します。 値ラベルを追加します。 |
| プロセス番号 1 は、本番環境を呼び出します。 追加。 |
| プロセス番号 2 を実験的と呼びます。 |
| そして、その値ラベル列プロパティを追加することで、 |
| データテーブルに素敵なラベルが表示されるようになりました。 プロセス 1 とプロセス 2 を見る代わりに、実稼働と実験的なものを見るのです。 |
| データ クリーニング スクリプト アシスタント。 プロパティコピー機を選択します。 |
| 列プロパティのスクリプトがクリップボードにコピーされたので、処理中のスクリプトに戻るという小さなメッセージがポップアップ表示されます。 |
| DCSA プロパティ コピー機から。 |
| そしてペーストして、Control V を押してペーストします。 これら 2 つの値ラベルを割り当てるために必要なスクリプトがあります。 完了しました。 |
| とても良い。 さて、データ キュレーションの手順がもう 1 つあります。これにはデータ クリーニング スクリプト アシスタントが必要です。 |
| たとえば、このデータテーブル内のバキュームがオフになっている行のみを考慮したいとします。 右。 したがって、これらの行は 313 行あります。 |
| そして、バキュームがオンになっているこのデータテーブルの行を削除したいだけです。 したがって、ポイント アンド クリックでこれを行う方法は、私が今行ったのと同じように、それらを選択してから、テーブル サブセット コマンドを実行することです。 |
| 使用可能なコードを取得するには、データ クリーニング スクリプト アシスタントをもう一度使用する必要があります。 ここでは、バキュームがオフになっている行のみにこのデータ テーブルをサブセットする方法を示します。 まず、行メニューの下、行選択サブメニューの下で、この Select Where を使用します。 |
| コマンドを使用して、選択範囲に対して再利用可能なスクリプトを取得します。 バキュームがオフになっている行を選択します。 |
| [OK] をクリックしてその選択を実行する前に、もう一度赤い三角形に移動し、スクリプトをスクリプト ウィンドウに保存します。 |
| コントロール A. コントロール C を使用してそれをコピーし、もう一度貼り付けます |
| 列から。 |
| 場所を選択してください |
| Control V。バキュームがオフになっている行を選択する JSL コードがあります。 もう一度、 |
| 選択した行を取得するには、データ クリーニング スクリプト アシスタントを使用する必要があります。 ああ、まずは実際に選択を実行してみましょう。 |
| そこにそれがある。 行を選択した状態で、再度アドイン、データ クリーニング スクリプト アシスタント、選択した行のサブセットに進みます。 |
| データのサブセットを含む新しいデータ テーブルに名前を付けるように求められます。 それを真空、真空オフと呼びましょう。 それが新しいデータテーブルの名前です。 [OK] をクリックすると、サブセット スクリプトがクリップボードにコピーされたというメッセージが表示されます。 |
| そしてそれを一番下に貼り付けます。 |
| そこにそれがある。 |
| これで、JMP 15 で使用する完全なデータ キュレーション スクリプトが完成しました。実際に使用するとどのようなものになるかを見てみましょう。 私たちが作業し、キュレーションを行うために修正を行ってきたデータテーブルを閉じるつもりです。 閉じて元に戻しましょう |
| 乱雑な状態。 |
| JMP の正しいバージョンを使用していることを確認してください。 |
| よし。 はい、これが乱雑なデータです。 そして、それが実稼働環境であり、新しいデータが常に入ってくるため、いくつかの新しい行が入ってきたとします。 データ キュレーション ワークフローを再実行する必要があります。 |
| スクリプトを実行します。 |
| これらの操作はすべて実行されました。 値のラベルに注目してください。 湿度が継続的に続くことに注意してください。 バキュームがオフになっている行のみにサブセットを設定していることに注意してください。 ワークフロー全体 |
| JSL スクリプトで再現できるようになりました。 これが、JMP 15 について留意する必要があることです。 JSL スクリプトを直接抽出できるツールもあります。その他の場合は、私のアドインであるデータ クリーニング スクリプト アシスタントを使用します。 |
| ここで、JMP 16 でこれがどれほど楽しく、どれほど簡単であるかを説明します。 ワークフロー全体を実行するつもりはない |
| 多少冗長になるのでもう一度繰り返しますが、これまでに行ったことの一部を見てみましょう。 ここでは JMP 16 を使用しており、ログを開いてみます。 |
| ログは JMP 16 では異なって見えますが、現時点ではそれらの違いの一部が確認できるでしょう。 複雑なコンポーネント データを開いてみましょう。 |
| ここにあります。 そして、ログには、乱雑なデータ テーブルを開いたというセクションがあることに気づくでしょう。 そしてここの下です。 これを実現する JSL スクリプトは次のとおりです。 |
| 私たちがたった今やったこと。 したがって、これは、必要なすべてのスクリプトを自動的にキャプチャする実行ログのようなものです。 まだ完成していません。 |
| まだ新しい機能が追加されています。 そして私も、それは今後も続くと思います。 |
| しかし、すでにこの強化されたログ機能は非常に便利であり、データ キュレーション アクティビティのほとんどをカバーします。 |
| また、現在私がお見せしているのは、JMP の早期採用バージョンであることにも言及しておかなければなりません。 アーリーアダプターのバージョン 5 です。 だから完全にリリースしたら |
| 来年初めに JMP 16 の製品版がリリースされる予定ですが、おそらく現在のものとは少し異なるものになるでしょう。 |
| さて、それでは続行して、データキュレーションの手順のいくつかをもう一度実行してみましょう。 ワークフロー全体は冗長になるため、説明しません。 そのうちのいくつかをやってみましょう。 |
| ビクターが必要としていたことのいくつかを見ていきます。 JMP 16 では、データ クリーニング スクリプト アシスタントは必要ありません。 いつものようにポイント アンド クリックを行うだけです。 |
| そこで、湿度を文字から数値に、公称値から連続値に変更して、[OK] をクリックします。 構造化ログでは次のようになります。 それは持っています |
| そのJSLをキャプチャしました。 さて、データテーブルに戻ります。 バッチ番号と部品番号のモデリング タイプとプロセスを連続から公称に変更します。 |
| これで完了です。 それもログに記録されています。 値が 1 つだけある施設列を削除します。右クリックして [列の削除] を選択します。 それはなくなった。 |
| PSI。 |
| OK、これらがツールのすべてでした...JMP 15 の Victor で行ったことのすべてです。 ここ JMP 16 では、これらすべてが JMP スクリプトとして残されており、ここにコピーして再利用することができます。 美しい。 |
| よし。 もう一歩だけお見せします。 サブセットのバキュームがオフになっていることを示してみましょう。 JMP 16 では、はるかにシンプルになります。 私たちがしなければならないのは、 |
| すべてのオフの掃除機を選択します。行メニューを使用する必要さえありません。オフになっているセルの 1 つを右クリックして、一致するセルを選択するだけで、バキュームがオフになっている 313 行が選択されます。 そして、通常どおり、サブセットを実行し、選択した行のみをサブセット化するために、テーブル サブセットを選択します。 |
| そして、選択した行のみを含み、すべての列を保持する、vacuum off という名前の新しいテーブルを作成します。 さぁ行こう。 |
| それでおしまい。 これらのデータ キュレーション手順をすべて実行しました。 構造化ログでは次のようになります。 |
| これを再利用可能で再現可能なデータ キュレーション スクリプトにするには、赤い三角形に到達し、スクリプトをスクリプト ウィンドウに保存するだけです。 これをデータに、v16 キュレーション スクリプトとしてデスクトップに保存します。 |
| そしてここにあります。 これがスクリプト全体です。 それでは、JMP 16 のすべてのデータを閉じて、そのスクリプトを再実行するとどうなるかを示しましょう。 |
| ここで、JMP 16 のホーム ウィンドウに戻りました。 これが私のキュレーションスクリプトです。 最初の行は open コマンドであるため、データ テーブルを開く必要すらないことがわかります。 ここで一列に並んで行われます。 |
| 新しいデータが入ってきて、このファイルが更新されたときに、データ キュレーションの手順を実行するために必要なのは、スクリプトを実行することだけです。 |
| そして、それがそこにあります。 すべてのキュレーション ステップと 313 行のサブセット。 つまり、JMP 16 の拡張ログを使用して、すべてのデータ キュレーション作業をキャプチャし、それを再現可能なスクリプトに変更します。 |
| さて、これが JMP 15 のチートシートです。もう一度思い出してください。これは、現在 JMP 15 を使用しているときに再利用可能なコードを抽出するために知っておく必要があることです。これについて心配する必要はありません。 JMP 16 をリリースしたら、さらに重要になります。 |
| 2021 年初めに。 |
| 結論として、Mia は JMP でデータキュレーションを実現する方法を示しました。 これは、ポイント アンド クリックによって問題を特定し、修正する探索的で反復的なプロセスです。 |
| データが新しいデータで定期的に更新される場合、時間を節約するためにそのワークフローを自動化する必要があります。 |
| また、プロセスを文書化し、後で戻って何をしたかを確認するときにパンくずリストを残すこともできます。 |
| 自動化のプロセスでは、ポイント アンド クリック アクティビティが再利用可能な JSL スクリプトに変換されます。 |
| JMP 15 では、これらの目的を達成するために、組み込みツールとデータ クリーニング スクリプト アシスタントのツールの両方を組み合わせて使用する方法について説明しました。 |
| また、JMP 16 のスニーク プレビューと、強化されたログを使用してポイント アンド クリック データ キュレーション アクティビティを受動的に自動的にキャプチャし、再利用可能な美しいデータを残す方法についても説明しました。 |
| 再現可能なデータキュレーションスクリプト。 |
| よし。 以上が私たちのプレゼンテーションです。お時間をいただきありがとうございました。 |