ある列のテキストに目を通し、別の列に重要な用語を挿入するにはどうすればよいですか?こんにちは皆さん!
この掲示板への初めての投稿なので、形式が正しくない場合は申し訳ありません。 私は、12 個の実験の積み重ねられたデータセットを分析するための新しいスクリプトを考案中です。 「バッチ ID」列からいくつかのキー フレーズを取得し、数式/スクリプト (できれば数式) を使用して他の列に整理する必要があります。 したがって、このシナリオでは、「B01」フレーズをそのフレーズを含むバッチ ID と同じ行の Bioreactor 列に入力し、「VBTS-935」を Strain 列で同じようにし、日付も同じにする必要があります。日付列を使用します。 現在、テキスト データはこのようにフォーマットされていますが、分析を容易にするために再フォーマットする方法について提案がある場合は、ぜひお知らせください。
事前にご協力いただきありがとうございます。
自動化とスクリプト作成コンテンツの構成Re: ある列のテキストをスキャンして、別の列に重要な用語を挿入するにはどうすればよいですか?こんにちは@BunnyBoi12 、
最後の 3 列に数式を追加することをお勧めします。 調査できる例をいくつか示します。
バイオリアクター: word(2, :バッチ ID, ":")
Strain: word(2, :Batch ID, ", ") // 引用符内にもスペースがあることに注意してください。
日付: word(3, :バッチID, ", : ")
日付列に関する追加の注意: 必要に応じて、word() 関数を format() 関数でラップし、日付をフォーマットすることができます。
[ヘルプ] > [スクリプト インデックス] も、有益と思われる機能を調べるための優れたリソースです。
Re: ある列のテキストをスキャンして、別の列に重要な用語を挿入するにはどうすればよいですか?これを実行する方法にはかなりの数のオプションがあります (word() と Words() は使用できる関数の数が少ないですが、正規表現に精通している場合は Regex() を使用できます)。
また、Recode を検討することをお勧めします (列ヘッダーを右クリックします)。

たとえば、セグメントの抽出オプション (およびその他のオプション) があります。


列を分割すると、拡張ログからスクリプトを取得できるようになります。

Text To Columns は、大きな問題をいくつかの小さな問題に分割するのに役立ちます。

また、JMP コミュニティに質問を投稿するときは、一般に、何らかのデータ (共有できる場合はモックアップまたは本物) を提供し、少なくとも数行の目的の結果列を含めることをお勧めします。さまざまなソリューションをテストするときに役立ちます。
Re: ある列のテキストをスキャンして、別の列に重要な用語を挿入するにはどうすればよいですか?素晴らしいありがとう! これらの用途では、recode オプションをより頻繁に使用することになるでしょう。
Re: ある列のテキストをスキャンして、別の列に重要な用語を挿入するにはどうすればよいですか?「2」と「3」が何を意味するのか説明していただけますか? あなたの数式は魅力的に機能しましたが、数式のコンテキストに関しては、JMP が提供する説明が頭から離れないので、チームの他のメンバーにこれを適切に使用する方法を確実に教えたいと思っています。
Re: ある列のテキストをスキャンして、別の列に重要な用語を挿入するにはどうすればよいですか?文字列があるとします。
mystr = "my,name,is,starfruitbob"
word( <ここにある数字>, <処理している内容>, <すべての区切り文字、文字列形式> )
私の意見では、これらのそれぞれが少し順番を間違えて何を行うのかを学ぶのが最善です。
- <処理しているもの> : これは、たとえば文字列変数または列です。 これが入力です。 文字タイプである必要があります。
- : 「ここに文字列を入れます!」 <-- 必要な区切り文字をすべてここに入力します。 各スペースを入れても、それらは個別に区切り文字として使用されます。
- : 入力をどのように区切るかに応じて、入力はさまざまな「チャンク」に分割されます。 数値は、返したい「チャンク」です。
例を見てみましょう:
mystr = "my,name,is,starfruitbob";
// Note where the commas are in the variable above
print( word( 1, mystr, "," ) ); // Returns: my
print( word( 3, mystr, "," ) ); // Returns: is
// If the delimiter is changed...
print( word( 1, mystr, "s" ) ); // Returns: my,name,i
// This is because it will return the first characters BEFORE the new delimiter "s"
print( word( 2, mystr, "s" ) ); // Returns: ,
// There's only a single comma between the two "s" delimiters, and is the second "chunk" of the input
これは役に立ちますか@BunnyBoi12
Re: ある列のテキストをスキャンして、別の列に重要な用語を挿入するにはどうすればよいですか?そう思います。 それで、もしそうしたら
print( word(3, mystr, "s" ) ); 「tarfruitbob」が返されるでしょうか?
Re: ある列のテキストをスキャンして、別の列に重要な用語を挿入するにはどうすればよいですか?その通り。 
Re: ある列のテキストをスキャンして、別の列に重要な用語を挿入するにはどうすればよいですか?あなたは素晴らしい人です、素晴らしい一日になることを願っています