リンクされたサマリーテーブルを作成できますか?こんにちは、みんな、
JMPに適さないことをしようとしていたことをお詫びしますが、JMPをデータベースとして活用して多くの材料特性データを保存しようとしていました。私は個々のJMPテーブルを使用してデータを視覚化/分析しますが、測定したさまざまなプロパティの平均/標準偏差をキャプチャする重要な夏のテーブルを取得したいデータのユーザーがいます。
たとえば、Materials Database-Physical Dataという(過度に単純化された)テーブルがあるとします。
| 素材 | 状態 | プロパティA | プロパティB |
| 木 | 新しい | 100 | 5042 |
| 木 | 新しい | 97 | 6005 |
| 木 | 新しい | 113 | 5532 |
| 木 | 水経験後 | 76 | 3680 |
| 木 | 水経験後 | 45 | 4032 |
| 木 | 水経験後 | 68 | 2599 |
| ストロー | 新しい | 33 | 1107 |
| ストロー | 新しい | 21 | 958 |
| ストロー | 新しい | 16 | 1327 |
| ストロー | 水経験後 | 10 | 280 |
| ストロー | 水経験後 | 7 | 332 |
| ストロー | 水経験後 | 11 | 399 |
また、このテーブルや他のテーブルにリンクするマテリアルデータベース-マスターサマリーテーブルと呼ばれるテーブルも必要です。マテリアル列は同じIDを共有しますが、テストされたレプリケートの数に応じて、特定のマテリアルIDと条件に対して各テーブルの行数が異なる可能性があります。サマリーテーブルを次のように表示します。
| 素材 | 平均(プロパティA)-新規 | StDev(プロパティB)-新規 | 平均(プロパティA)-水後 | StDev(プロパティA)-水の後 | 平均(プロパティB)-新規 | StDev(プロパティB)-新規 | 平均(プロパティB)-水後 | StDev(プロパティB)-水の後 |
| 木 | 103 | 9 | 63 | 16 | 5526 | 482 | 3437 | 747 |
| ストロー | 23 | 9 | 9 | 2 | 1131 | 186 | 337 | 60 |
特定の列に配置するスクリプトを探していると思います。これにより、より多くのマテリアルを収集するにつれて、新しいマテリアルの行を追加し、測定し続けるさまざまなプロパティに応じて列を追加します。私はせいぜいJMPの初心者なので、次のようなバリエーションで、設定された行数の平均または標準偏差を計算できますが、If(Modulo(Row()、3)== 1、Col Mean(:Property A、Ceiling(Row()/ 3)))ここでの以前の投稿のおかげで、これからサブテーブルを作成する必要があります。これにより、各マテリアルに1つの行を作成して、次のリンクIDを使用できるようになります。さまざまなテーブルの[マテリアル]列で、計算された平均/標準偏差をすべて組み合わせます。
これは本当に私の最良の選択肢ですか?アドバイスありがとうございます!
データ表スクリプティングRe:リンクされたサマリーテーブルを作成できますか?考えられるすべてのマテリアルとそのプロパティを含む1つのマテリアルデータベースファイルを作成することをお勧めします。 次に、サマリープラットフォームを使用して、さまざまな統計を取得できます。データは適切にグループ化されます。


必要なときに簡単に作成できるため、このサマリーテーブルを保存することすらできないでしょう。
JMPとJSLに慣れたら、ユーザーが実行時にこのサマリーテーブルを取得するために使用できるスクリプトを作成できます(個々のデータテーブルが必要な場合は、サマリーテーブルを作成する前にそれらを連結できます)。
コミュニティへようこそ。うまくいけば、これでいくつかのアイデアが得られます。
Re:リンクされたサマリーテーブルを作成できますか?JMPは、SQLiteデータベース(.db)ファイルからネイティブにプルできます(プッシュできません)。彼らは本当に使いやすいです。
例えば。このdbファイルをJMPにドラッグするだけです。または、好きなように開きます。
簡単にスクリプトを作成することもできます。
New SQL Query(
Connection( "SQLite:Database=$DESKTOP/chinook.db" ),
QueryName( "Fun" ),
CustomSQL("SELECT t1.Title, t2.Name
FROM albums t1
LEFT OUTER JOIN artists t2
ON t1.ArtistId = t2.ArtistId"),
/*
//OR instead of CUSTOM SQL
Select( Column( "Title", "t1" ), Column( "Name", "t2" ) ),
From(
Table( "albums", Alias( "t1" ) ),
Table(
"artists",
Alias( "t2" ),
Join(
Type( Left Outer ),
EQ( Column( "ArtistId", "t2" ), Column( "ArtistId", "t1" ) )
)
)
)
*/
) << Run
私は時代遅れかもしれませんが、上記の方法を実行しない理由は、低速のVPNで非常に大きくなる可能性のある「マスターサマリーテーブル」をプルしようとする人々を見て、20分ほどかかるためです。最初にテーブル全体を開く必要があるため、単一の行をクエリします。