JMP テーブルの 2 つの列の値にインデックスを付けて、外部テーブルから値を選択するにはどうすればよいですか?<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />非常に大きな JMP テーブルで作業しています。 外部の 2 次元の小さなテーブルから値を選択し、その値を新しい列に入れたいと思います。 外部テーブルから値を選択するために、現在の JMP テーブルの 2 つの列の各行の値を、外部の小さなテーブルの 2 つの添え字として使用したいと考えています。 誰でもこれを行うのを手伝ってもらえますか?
私は2つのファイルを持っています。 Big_data_matrix には、1 ~ 24 の値のみを持つことができる最初の列が含まれています。 列 2 は空です。 Values.jmp は、24 のエントリを持つ 1 つの列を含む小さなテーブルです。 Big_data_matrix の各行について、列 1 の値を読み取りたいと思います。それが k に等しい場合、値から k 番目のエントリ (k=1:24) を選択したいと思います。 jmp テーブルを作成し、Big_data_matrix の 2 列目に入力します。
私の元の Big_data_matrix は非常に大きく (>1M 行)、多くの異なる Big_data_matrix データ テーブルに対してこれを行う必要があります。
これはおそらくjslで簡単に実行できますが、私はJSLの経験がなく、可能であればJMPでこれを実行したいと考えています.
ありがとう。
メッセージの編集者: Ranjan Sonalkar
Re: JMP テーブルの 2 つの列の値にインデックスを付けて、外部テーブルから値を選択するにはどうすればよいですか?MS
ありがとう。 シンプルなソリューションで、うまく機能します。
Re: JMP テーブルの 2 つの列の値にインデックスを付けて、外部テーブルから値を選択するにはどうすればよいですか?UPDATE ステートメントを使用して、小さなテーブルの値で大きなテーブルを更新できます。JSL の例を次に示します。
dt_big =新しいテーブル( 「ビッグデータマトリックス」 、
行を追加( 2400 ) 、
新しい列( 「最初の列」 、数値、連続、フォーマット( "一番" 、 12 ) )
) ;
dt_val =新しいテーブル( 「価値観」 、行を追加( 24 ) 、
新しい列( 「コラム1」 、キャラクター、公称、
設定値( { 「ああ」 、 「BB」 、 「CC」 、 「DD」 、 「ええ」 、 「FF」 、 「GG」 、 "HH" 、 「Ⅱ」 、 「JJ」 、 「KK」 、 「LL」 、
"んん" 、 「NN」 、 「おお」 、 「PP」 、 「QQ」 、 "RR" 、 「SS」 、 「TT」 、 「うう」 、 「VV」 、 "WWW" 、 「○○」 } ) ) 、
新しい列( 「行番号」 、数値、連続、フォーマット( "一番" 、 12 ) 、
設定値( [ 1 、 2 、 3 、 4 、 5 、 6 、 7 、 8 、 9 、 10 、 11 、 12 、 13 、 14 、 15 、 16 、 17 、 18 、 19 、 20 、
21 、 22 、 23 、 24 ] ) )
) ;
// 1 ~ 24 のランダムな整数で埋めます
為に(私= 1 、私<= 2400 、私++、
桁( dt_big 、 「最初の列」 )[私] =円形(ランダム制服( 1 、 24 ) 、 0 ) ;
) ;
dt_big <<アップデート(
と( dt_val ) 、
列の一致( :最初の列= :行番号) 、
更新テーブルから列を追加( :列 1 )
) ;
Re: JMP テーブルの 2 つの列の値にインデックスを付けて、外部テーブルから値を選択するにはどうすればよいですか?OK、インデックスは 1 次元です。 次に、Update を使用することをお勧めします。
最初に、Values.jmp に 1 から 24 までの値を持つ 2 番目の列を追加します。 次に、ビッグ テーブルを有効にして、テーブル メニューの [更新] を選択します。 リスト ボックスで Values.jmp を選択し、[列を一致させる] をオンにします。 次に、大きなテーブルの最初の列を、Values.jmp で新しく作成された ID 列と一致させます。
次に、列 1 の数値に対応する値を持つ新しい列が大きなテーブルに追加されます (大きなテーブルの空の列 2 に小さなテーブルの値列と同じ名前が付けられている場合、この列は代わりに入力されます)。新しい列)。
はい、簡単にスクリプト化できます。
Re: JMP テーブルの 2 つの列の値にインデックスを付けて、外部テーブルから値を選択するにはどうすればよいですか?私は2つのファイルを持っています。 Big_data_matrix には、1 ~ 24 の値のみを持つことができる最初の列が含まれています。 列 2 は空です。 Values.jmp は、24 のエントリを持つ 1 つの列を含む小さなテーブルです。 Big_data_matrix の各行について、列 1 の値を読み取りたいと思います。それが k に等しい場合、値から k 番目のエントリ (k=1:24) を選択したいと思います。 jmp テーブルを作成し、Big_data_matrix の 2 列目に入力します。
私の元の Big_data_matrix は非常に大きく (>1M 行)、多くの異なる Big_data_matrix データ テーブルに対してこれを行う必要があります。
これはおそらくjslで簡単に実行できますが、私はJSLの経験がなく、可能であればJMPでこれを実行したいと考えています.
ありがとう。
Re: JMP テーブルの 2 つの列の値にインデックスを付けて、外部テーブルから値を選択するにはどうすればよいですか?メイン テーブルの 2D 座標に基づいて、jsl を使用して別のテーブルから値を取得する方法の例を次に示します。
//テーブルの例
dt1 =新しいテーブル( 「ビッグテーブル」 、
行を追加( 10 ) 、
新しい列( "row_index" 、設定値([ 1 、 2 、 3 、 4 、 5 、 1 、 2 、 3 、 4 、 5 ])) 、
新しい列( 「列インデックス」 、設定値([ 1 、 2 、 3 、 1 、 2 、 3 、 1 、 2 、 3 、 1 ]))
) ;
dt2 =新しいテーブル( "小さいテーブル" 、
行を追加( 5 ) 、
新しい列( 「コラム1」 、設定値([ 1 、 2 、 3 、 4 、 5 ])) 、
新しい列( 「コラム2」 、設定値([ 6 、 7 、 8 、 9 、 10 ])) 、
新しい列( 「コラム3」 、設定値([ 11 、 12 、 13 、 14 、 15 ]))
) ;
// 2 つのインデックス列に対応する小さなテーブルから新しい列の値を追加します
dt1 <<新しい列( "データ" 、数値) ;
行ごとに( dt1 :データ=桁( dt2 、評価( : column_index []))[ :行インデックス])) ;
Re: JMP テーブルの 2 つの列の値にインデックスを付けて、外部テーブルから値を選択するにはどうすればよいですか?こんにちは、
テーブルと目的の出力の小さな例を提供できますか?これは、達成しようとしていることを明確にするのに役立ちます。
ありがとう。