JMP 13 で CSV をマージするやあ、
特定のディレクトリにいくつかの CSV ファイルをマージするのが好きです。 ファイルは同様の形式ですが、ヘッダーの後の数行をスキップして、最初のファイルのヘッダーのみを保持するのも好きです。 ファイルがマージされたら、マージされたファイルを分析できます。 JMP コミュニティを調べましたが、最適な解決策が見つかりませんでした。 これを行うスクリプトを提供してくれてありがとう。 ありがとう。
Re: JMP 13 で CSV をマージするありがとうジム。 Word() 関数を使用して動作させることができました。 ご支援いただきありがとうございます。
Re: JMP 13 で CSV をマージするありがとうジム。 私は主に Pick File() を読んでいて、それを行う方法があると思いました。 私はあなたの提案を試みて、あなたに知らせます。 再度、感謝します。
Re: JMP 13 で CSV をマージする1. Scripting Guide を読むことを強くお勧めします......JSL で利用可能なさまざまな項目のレビューを取得する必要があります........
あなたが要求したことに対する解決策は、完全なパスの末尾からファイル名を単純に削除することです。JSLには、あらゆる種類の文字処理関数があります。見る:
ヘルプ==>スクリプト インデックス==>関数==>キャラクター
具体的には、Word() 関数を使用する必要があります
completefilename = "/C:/Users/txjim/Parameter Ranking/Parameter Ranking_v8 with private.jsl";
filename = Word( -1, completefilename, "/" );<BR />show( filename );
ファイル名の値は、「パラメータ Ranking_v8 with private.jsl」です。
Re: JMP 13 で CSV をマージするありがとうジム。 Pick File() を使用しましたが、フルパス/ファイル名情報ではなく、ファイル名のみが必要です。 代わりにファイル名を取得する方法はありますか?
prefilelist = Pick File(
"Select JMP File",
"",
{"JMP Files|jmp;jsl;csv", "All Files|*"},
1,
0,
"",
multiple // save flag is 0, allows multiple file selection
);
show(prefilelist);
継続的なサポートに感謝します。
Re: JMP 13 で CSV をマージするScripting Index に Pick File() の定義と使用例があります。これにより、ファイルを選択できるようになります。
Re: JMP 13 で CSV をマージする皆様の多大なご支援に感謝いたします。 また、ディレクトリ内のすべての csv ファイルを選択するのではなく、ディレクトリを選択して個々の csv ファイルを選択できるようにしたいと考えています。 Byron (JMP) によって書かれたスクリプトを使用しており、ここに添付されています。 それは完全に機能しますが、誰かが個々の csv ファイルを選択できるように助けてくれれば、それは非常に役に立ちます。 ありがとう
Re: JMP 13 で CSV をマージするありがとう。 JMP13 の csv マージを作成しようとしていますが、JMP14 でこれを処理できると聞いてうれしいです。 アップグレードする時が来ました!!
Re: JMP 13 で CSV をマージするありがとう。 私もあなたのものを試してみましたが、うまくいきます。
Re: JMP 13 で CSV をマージするJMP 14 には複数ファイルのインポートがあります。 ディレクトリからファイルをロードし、同様のファイル (同じ列、名前) を結合するように設計されています。 テキスト エクスプローラーのデータ テーブルにテキスト ファイルをロードしたり、ヘッダーに CSV オプションを使用して一部の行をスキップして CSV ファイルをテーブルにロードしたりできます。
Choosing files from a directoryChoosing files from a directoryディレクトリからファイルを選択する
CSV optionsCSV optionsCSV オプション
Re: JMP 13 で CSV をマージするdt = New Table( "Untitled", Add Rows( 4 ),
New Column( "Column 1", Character, "Nominal",
Set Values( {"abc", "1", "2", "3"} ) ),
New Column( "Column 2", Character, "Nominal",
Set Values( {"def", "6", "5", "4"} ) ),
New Column( "Column 3", Character, "Nominal",
Set Values( {"ghi", "7", "6", "5"} ) ),
New Column( "Column 4", Character, "Nominal",
Set Values( {"jkl", "2", "3", "4"} ) )
);
// Rename each column to the first row
for (i = 1, i <= ncols(dt), i++,
column(i) << set name(column(i)[1]);
);
// Remove the first row
dt << delete rows([1]);Re: JMP 13 で CSV をマージするありがとう。 それは完全に機能します。 私がやりたかった最後のことは、列名を最初の行の値と同じに設定してから、最初の行を削除することです。
Re: JMP 13 で CSV をマージするこのコードでうまくいくはずです。用途どこでも行を取得それ以外の場所を選択.
dt = New Table( "Test", Add Rows( 5 ),
New Column( "Column 2", Character, "Nominal",
Set Values( {"ABC", "ABC", "DEF", "DEF", "ABC"} )
)
);
abc_rows = dt << get rows where(:Column 2 == "ABC");
nr = nrows(abc_rows);
if (nr > 1,
abc_new = abc_rows[2::nr];
dt << delete rows(abc_new);
);
Re: JMP 13 で CSV をマージするありがとう。 それはうまくいきます。 ここで、テーブルの各行を調べて、最初の行を除いて列 2 = "ABC" を削除したいと思いました。
私はこのようなことをしました:
dt = 現在のデータ テーブル();
N = N 行 (dt);
(i= 2, i <= N, i++,
dt << select Where (:Column 2 == "ABC");
);
列 2 = "ABC" のすべての行が選択されました。 最初の行が選択されないようにしたかったのです。 いつもご愛顧いただきありがとうございます。
Re: JMP 13 で CSV をマージする[行を選択] は、行番号で行を選択します。使用する必要があるのは
dt << Select Where( :Column 2 == "" );
Re: JMP 13 で CSV をマージするありがとう。 これでcsvをマージできました。 たとえば、「Coulmn 2」が空白の行を削除する必要があります。 以下を使用しましたが、機能しませんでした。
dt = 現在のデータ テーブル():
dt << select rows(:Column 2 == "");
空白のすべての行ではなく、1行のみを選択します。 これにはJMP 13を使用しています。 助けてください。 ありがとう。
Re: JMP 13 で CSV をマージするこれを行うことができる唯一の方法は次のとおりです。
1. 各 CSV ファイルを読み込みます。
2. 不要な各ヘッダーの後のレコードを削除します。
3. データ テーブル 2 から N までの名前を、一致させたい最初のデータ テーブルの名前と一致するように変更します。
4. テーブルを連結します。
5. 連結されたファイルを CSV ファイルとして保存します。
データテーブルの変更が必要になる可能性があることを考えると、非常に単純ですが面倒です。