Txt ファイルから数値データをフォーマットする際の問題親愛なるコミュニティの皆様、
添付のサンプル ファイルのようにフォーマットされたデータを適切にインポートするための JSL スクリプトを作成しようとしています。次のような課題に直面しています:
- 小数点記号は「.」ではなく「,」です。地域設定のデフォルト設定を使用すると、JMP は「,」を千単位の区切り文字として解釈します。jsl スクリプト内でこれらの数字を JMP に適切に解釈させるにはどうすればよいですか?
- 負の数は次のようにフォーマットされます: 64,000-。JMP はこのような形式を処理できますか。
解決策の 1 つは、txt ファイルを再フォーマットすることですが、これは ERP からの抽出であり、Excel では処理できるのに私がそのようなファイルを処理できないことを IT チームは理解していません。
よろしくお願いいたします。
ジェローム
自動化とスクリプトマスカスタマイゼーションRe:Txtファイルから数値データをフォーマットする際の問題こんにちは、
次のようなことを試してみてください。 ITが問題を理解していないとおっしゃっていても、JSLを使用してファイルを自分で再フォーマットできます。 小数点以下のコンマを処理するためのインポート設定がある可能性がありますが、私はそれを手に負えないと考えることができず、ドキュメントで見つけることができません。 おそらく他の誰かがその設定で返信するでしょう。 それまでは、これでうまくいくかどうかを確認してください。 サンプルファイルを添付しました。ダウンロードフォルダに配置すると、スクリプトは変更なしで実行されることが期待されます。
</CODE></P>
<PRE><CODE class=" language-jsl">Names Default To Here( 1 );
//set these to reflect your path and file name
path = "$DOWNLOADS/";
origFile = "example.txt";
holdFile = "example_modified.txt";
//get text of original file and replace commas with decimals
txt = Substitute( Load Text File( path || origFile ), ",", "." );
//save resulting text to a file, open this file as a table, then delete the file
Save Text File( path || holdFile, txt );
dt = Open( path || holdFile );
Delete File( path || holdFile );
//create a new column. if the last character is not "-", the string is immediately converted to a number. If the last
//character IS a "-", the string is converted to a number after the "-" is moved to the first character of the string
dt << New Column( "xx", formula( Num( If( Right( :INFO, 1 ) != "-", :INFO, "-" || Left( :INFO, Length( :INFO ) - 1 ) ) ) ) );
//remove the formula, so we can delete the original INFO column and rename our new column to INFO
dt:xx << Delete Formula;
dt << Delete Columns( "INFO" );
dt:xx << set name( "INFO" );
乾杯、
ブレイディ