選択した列の空の行を置き換える方法は?JMP コミュニティの皆様、こんにちは。
列に特定の名前が付いたデータ テーブルがあります。まず、それらの列を選択するスクリプトを作成しました。これらの列の空の行を "REF" に置き換えたいのですが、それらの特定の名前のない他の列は変更されません。 JSLでこれを行いますか? ありがとう。

データ表Re: 選択した列の空の行を置き換えるには?どうもありがとう!Re: 選択した列の空の行を置き換えるには?こんにちは。
あなたのスクリプトには2つの問題があると思います.
1番目: 間違ったリスト (Col_List) を参照した場合
2番目:アクションはifステートメント内ではなく、その後にあるため、ifはアクションを制御できません。
添付のスクリプトを試してみてください。うまくいくはずです。 Jim のスクリプトに加えて、必要な変更を加えました。
Names Default To Here( 1 );
dt = New Table( "test",
New Column( "A::LotData", "Character", set values( {"", "YES", ""} ) ),
New Column( "B::LotData", "Character", set values( {"", "YES", ""} ) ),
New Column( "C::LotData", "Character", set values( {"", "YES", ""} ) ),
New Column( "D::Test", "Character", set values( {"", "Test", ""} ) ),
New Column( "value", set values( {1, 2, 3} ) )
);
colNameList = dt << get column names( string, character );
For( i = 1, i <= N Items( colNameList ), i++,
Try(
If( Contains( colNameList[i], "::LotData" ),
As Column( dt, colNameList[i] )[dt << get rows where( As Column( dt, colNameList[i] ) == "" )] = "REF"
),
)
);Re: 選択した列の空の行を置き換えるには?こんにちは。
いただいたスクリプトを試してみましたが、これも値列を置き換えるので、列をロットデータに置き換えるだけでよいでしょうか?
私はこのスクリプトを書きましたが、何が間違っているのか理解できません。
dt = Current Data Table();
colNameList = dt << get column names( string, character );
For( i = 1, i <= N Items( colNameList ), i++,
Try(
If(Contains(Col_List[i], "::LotData")),
As Column( dt, colNameList[i] )[dt << get rows where( As Column( dt, colNameList[i] ) == "" )] =
"REF"
)
);
Re: 選択した列の空の行を置き換えるには?やあ、
スクリプトを使用しない別の解決策は、3 つの列を選択し、ヘッダーを右クリックして [属性の標準化] > [再コード化] > 空白を「REF」に置き換えることです。
注意: 再コーディングは元に戻すことができないため、上記の手順を実行する前に必ずテーブルを保存してください。
一番、
TS
Re: 選択した列の空の行を置き換えるには?すべての文字列をループし、各列で空のセルを含むすべての行を見つけて、それらを REF に設定する小さなスクリプトを次に示します。
Names Default To Here( 1 );
dt = Current Data Table();
// Get the column names for all character columns
colNameList = dt << get column names( string, character );
For( i = 1, i <= N Items( colNameList ), i++,
Try(
As Column( dt, colNameList[i] )[dt << get rows where( As Column( dt, colNameList[i] ) == "" )] =
"REF"
)
);