キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 
The Discovery Summit 2025 Call for Content is open! Submit an abstract today to present at our premier analytics conference.
言語を選択 翻訳バーを非表示
最初に公開されたスレッドを表示

変数に格納されたリストを使用して列リスト ボックスを更新すると、期待どおりに機能しません。 これはそういう意味なのでしょうか?

Ressel
Level VI

私が書いたスクリプト内の以前の「罪」を、全会一致の参照で更新することで修正しようとしています。つまり、別のテーブルが現在のテーブルであっても、スクリプトが私が指示したい(欲しい)1つのテーブルを参照するようにします。または「干渉」)テーブル。 以下の問題を再構成してみました。

 

Names Default To Here( 1 );

// this is the table i want to work with
dt = New Table( "Target table", invisible,
 Add Rows( 3 ),
 New Column( "Name_1",
  Character( 1 ),
  "Nominal",
  Set Values( {"A", "B", "C"} ),
  Set Display Width( 45 )
 ),
 New Column( "Name_2",
  Character( 1 ),
  "Nominal",
  Set Values( {"X", "Y", "Z"} ),
  Set Display Width( 45 )
 ),
 New Column( "NumericRight",
  Numeric,
  "Continuous",
  Format( "Best", 12 ),
  Set Values( [1, 2, 3] ),
  Set Display Width( 78 )
 ),
 New Column( "NumericAlso",
  Numeric,
  "Continuous",
  Format( "Best", 12 ),
  Set Values( [7, 8, 9] )
 )
);

dt2 = New Table( "Interfering table", invisible,
 Add Rows( 3 ),
 New Column( "Name_1",
  Character( 1 ),
  "Nominal",
  Set Values( {"D", "E", "F"} ),
  Set Display Width( 45 )
 ),
 New Column( "Name_2",
  Character( 1 ),
  "Nominal",
  Set Values( {"U", "V", "W"} ),
  Set Display Width( 45 )
 ),
 New Column( "NumericInterference",
  Numeric,
  "Continuous",
  Format( "Best", 12 ),
  Set Values( [4, 5, 6] )
 ),
 New Column( "MoreNumeric",
  Numeric,
  "Continuous",
  Format( "Best", 12 ),
  Set Values( [7, 8, 9] )
 )
);



// get lists
lstName_1 = Associative Array( dt:Name_1 ) << Get Keys; 
lstName_2 = Associative Array( dt:Name_2 ) << Get Keys; 
colList = dt << Get Column Names( "Numeric" );
 
// window with radio buttons & col list box
New Window( "Select values",
 Show Menu( 0 ),
 Show Toolbars( 0 ), 
 Border Box( Top( 0 ), Bottom( 20 ), Left( 20 ), Right( 10 ),
  H List Box(
   
   Panel Box( "Name_1",
    Radio Box(
     Eval List( lstName_1 )
    ) 
   ),
   
   Panel Box( "Name_2",
    Radio Box(
     Eval List( lstName_2 )
    )
   ),
   
   Panel Box( "Numeric Columns",
    clb = Col List Box( )
   ),
   clb << Append( colList ); // making me cry ...
  )
 )
);

 

私が見たいもの:

undefined

 

「ターゲットテーブル」が現在のテーブルではない場合に常に表示される内容:

undefined

 

私を完全に混乱させているのは、名前を変更するときです。 dt2:数値干渉dt2:NumericRight 、この結果が得られました:

undefined

 

dt2 がスクリプトに私が実行したい作業を実行させないのはなぜですか? dt2 で列の名前を変更すると、列リスト ボックスの内容に影響が出るのはなぜですか? 移動方法をいくつか試してみました列リスト変数をラップしてみました評価リスト() 、「運」なし。

 

コミュニティ内を再度検索すると、これを見つけました列リスト ボックスに入力する際にサポートが必要です。 別の解決策がある場合は、お知らせいただきありがとうございます。 あるいは、これはそういうことを意図しているのでしょうか、そうであれば、これはどういう意味ですか。

この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。

15件の返信15
hogi
Level XII

Re: 変数に格納されたリストを使用して列リスト ボックスを更新すると、期待どおりに動作しません。 これはそういう意味なのでしょうか?

これが私を困惑させます。

 

私たちは、列("高さ" )

Distribution(Columns("height"));

は (オプション)名前付き引数。

それで、何ですかコラムDistribution(("高さ")); ?

文法の観点から見ると、それは名前付き引数に与えられた「名前」である可能性があります。

しかし、これは標準の定義と衝突します。名前JSLで。 (比較する:名前(x)として)

この質問をするのは私が最初ではないと思います。名前付きパラメータの名前には正式な名前があると思います。

しかし、幸運にもそれをドキュメントで見つけることができませんでした。
@Mark_Bailey ?

この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。

hogi
Level XII

Re: 変数に格納されたリストを使用して列リスト ボックスを更新すると、期待どおりに動作しません。 これはそういう意味なのでしょうか?

列リストボックスは、列リストボックスが作成されたときに「現在の」データテーブルから列を受け入れるだけのようです。

dt2 にそれぞれの列が含まれていない場合は、追加できません。

 

私は推測する

current data table(dt);
 
// window with radio buttons & col list box
New Window( "Select values",

あなたには選択肢がありませんか?

 

そうでない場合は、使用してください

clb = Col List Box( Data Table(dt) )

列リスト ボックスに使用するデータ テーブルを指定するには、次のようにします。

undefined

 

 

 

この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。

Ressel
Level VI

Re: 変数に格納されたリストを使用して列リスト ボックスを更新すると、期待どおりに動作しません。 これはそういう意味なのでしょうか?

@ホギ、ありがとう、これも明日試して結果をお知らせします。

この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。

Ressel
Level VI

Re: 変数に格納されたリストを使用して列リスト ボックスを更新すると、期待どおりに動作しません。 これはそういう意味なのでしょうか?

@ホギ、びっくりしました! 助けてくれてありがとう。

  1. もちろん、目的のテーブルを現在のテーブルにしても機能します。 どういうわけか、私はまだこれを避けたかったのです。
  2. ただし、以下のコードも機能します
Panel Box( "Numeric Columns",
 clb = Col List Box(Data Table( dt ))
),
clb << Append( colList ); // this is still required, which I find interesting, since I thought the clb was already added above via Col List Box(...)

対照的に、以下の場合は機能しません。 むしろ、dt2 から数値列が追加されますが、これは私にとっては意味がありません。

Panel Box( "Numeric Columns",
 clb = Col List Box(dt, all, << Set Data Type ( "numeric" )) // adds numeric columns from dt2 :(...
),
/*clb << Append( colList );*/ // doesn't matter whether this is commented out or not

この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。

hogi
Level XII

Re: 変数に格納されたリストを使用して列リスト ボックスを更新すると、期待どおりに動作しません。 これはそういう意味なのでしょうか?

こんにちは@レッセル

正直に言いますが、少し当惑しました

 

彼らは使うべきだった

Col List Box(

オプションの引数として ... またはその他のもの - ただし、データテーブル("テーブル名")

- ちょっと誤解を招きますよね?

 

何年も Jmp ユーザーとして過ごしていると、式全体を次のように置き換えたくなります。 dt -そしてそれによって「インジケーター」を忘れます。
一方、データテーブルの引数としてテーブル名の代わりにテーブル参照を使用できるのは素晴らしいことです:)

この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。

Ressel
Level VI

Re: 変数に格納されたリストを使用して列リスト ボックスを更新すると、期待どおりに動作しません。 これはそういう意味なのでしょうか?

あなたのようなユーザーの存在と助けは、スクリプト作成やその他の JMP 関連のスキルに関して、私を含む多くの人々を高めてくれます。 これは優しさであり、とても感謝しています。

この投稿のオリジナルは 、English (US) で書かれており、ユーザビリティ向上のため自動翻訳機能を使用して表示しています。コメントを投稿すると、オリジナルの言語(English (US))やご指定の言語 でも表示されます。