Re:正規表現を使用して列の行を選択する方法dt << select where(
Contains( :"Aligned_bin_on_ref(ref[+/-]strand:start-end"n, , "Insert" ) == 1
)
Re:正規表現を使用して列の行を選択する方法こんにちはジム、
「'Aligned_bin_on_ref(ref [+/-] strand:start-end'、As Column / * ### * /()のアクセスまたは評価で行1の未解決の列」がまだ表示されます
タイプミスではない場合に備えて、列名の後に「n」を付けて、または付けずにソリューションを試しました。
ところで、私はJMP16.0.0を使用しています
dt << select where(
Contains( :"Aligned_bin_on_ref(ref[+/-]strand:start-end", ,"Insert" ) == 1 );
Re:正規表現を使用して列の行を選択する方法ジムありがとうございます。欠落している「)」括弧を追加した後、かっこは魅力のように機能しています。これにより、かなりの時間を節約できます。 乾杯!
Re: 正規表現で列の行を選択する方法Contains(...) は非常に興味深い関数です。 テスト文字列がソース文字列のどこかにある場合は true、そうでない場合は false を返す可能性があるようです。
実際には、ソース内のテスト文字列の (最初に出現した) 位置を返し、見つからない場合は 0 を返します。 0 は false を意味し、ゼロ以外は true を意味するため、true/false の結果が予想される場合、Contains(...) は問題なく機能します。
ただし、ジムの例が示すように、最初に出現した位置を使用して、それが最初かどうかを判断できます。 これは、この簡単なテストを行うためにより多くの機械を起動する regex(...) よりも効率的です。
含む方が読みやすい: 元の正規表現テストは次のようになります。
dt << select where( !Is Missing( Regex( dt:"Aligned_bin_on_ref(ref[+/-]strand:start-end)"n, "^Insert" ) ) );
一致しない場合、regex(...) は欠損値を返すためです。
どちらの場合でも、コメントはコードを保守する次の人に役立ちます。 /* ==1 で先頭にあることを確認する */ または /* 正規表現が ^ start で見つからない場合は行方不明を返します */
編集: regex(...)=="Insert" も機能しますが、欠損値との比較で true または false が返されないため、回避します。
Re: 正規表現で列の行を選択する方法親愛なるクレイジ、素晴らしいJSLレッスンをどうもありがとう!
非常に高く評価。
アルフレード
Re: 正規表現で列の行を選択する方法JSL を正しくコピーしていません。列名の後に 2 つのコンマがあり、末尾の「n」はありません
dt << select where(
Contains( :"Aligned_bin_on_ref(ref[+/-]strand:start-end"n , "Insert" ) == 1
)
コードに 2 つのカンマがあることに気付きました。これは間違いでした....エントリを修正しました。
正規表現を使用して列の行を選択する方法こんにちは。「Aligned_bin_on_ref(ref[+/-]struct:start-end」) という非常に複雑な名前の列で、「Insert」という単語で始まる行をすべて選択したいと考えています。他の列のいくつかを使用して任意の行を選択できますが、この列の名前はどういうわけか「コード」として解釈されます。
また、列の「値」には「Insert」という単語の複数のインスタンスが含まれている可能性があり、「Insert」で始まるものだけを選択したいため、正規表現を使用しようとしています。
これは、私がコメントアウトして試した他のコードと組み合わせた基本的なコードです。 テーブルのサンプルを添付します。
ご指摘をいただければ幸いです。
ありがとう!
アルフレド
//----------------- INITIALIZE ---------------
Names Default To Here( 1 );
dt = Current Data Table ();
dt << Clear Select;
//RefCol= "Aligned_bin_on_ref(ref[+/-]strand:start-end";
// dt << Select Where (:Name("Aligned_bin_on_ref(ref[+/-]strand:start-end"), "Insert" );
SelRows = dt << Get Rows Where (RegEx(As Column("Aligned_bin_on_ref(ref[+/-]strand:start-end") , "^Insert") == "Insert");<BR />
//InsertDepth = dt << Subset( (SelRows) );高度な統計モデリング消費者および市場調査マスカスタマイゼーション品質およびプロセスエンジニアリングウィンドウズ