テキストファイルのインポートで、デフォルトのフィールド幅設定が適用されない<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />私は頻繁に "20141214115959"の形式で "datetime"のような長い数値フィールドを持つテキストファイルをインポートする問題を抱えています、そしてJMPは "2.0141e + 13"のような科学的表記法で切り捨てられた数としてそれを表示し続けます" 数字を正しく表示するには、手動で列の設定に入り、幅を広げなければなりません。テキストファイルをインポートするときの自動フィールド幅は常に10です。 しかし、JMPは私も設定しようとした "Default Field Width"に対するプログラムの好みを持っています、それでもJMPはテキストファイルをインポートする目的のためにこの設定を尊重さえしません。 「Default Field Width」は、JMPテーブルに新しい列を作成した場合にのみ使用できます。
これはバグに違いありませんね。ファイルをインポートするときのデフォルトのフィールド幅が常に10にハードコードされ、設定を使用しないようにソフトウェアが作成されているのはなぜですか。インポート後に常に列を手動で編集しなくても、フィールド幅を正しく設定できる方法はありますか。
MS Excelにも同じ問題があり、私はJMPがもっとうまくいくと期待していたでしょうが、そうではないと思います。
テキストファイルのインポートでデフォルトのフィールド幅設定が使用できないあなたの例は、JMPが特定の時点として認識しないユーザーコード整数です。この値を文字列としてインポートしてから、新しい数値データ列の式にJSL関数を使用して、それをJMPの日時値に解析することができます。JMPは、1904年1月1日午前0時からの経過秒数で任意の時点を表します。"m / d / yh:m:s"のように、列の形式を使用してこの値をわかりやすい方法で表示できます。
このプロトタイプスクリプトは列式に変換できます。
//特定の時点を表す長い番号の例
日時= "20141214115959";
//文字列値を解析してJMP時間に変換する
日付時刻=日付MDY(
Num(Substr(日付と時刻、5、2))、
Num(Substr(日付と時刻、7、2))、
Num(Substr(日付と時刻、1、4))
)+
//時間を追加
時間(
Num(Substr(日付と時刻、9、2))
)+
//議事録を追加
分で(
Num(Substr(日付と時刻、11、2))
)+
//秒を追加
Num(Substr(日付と時刻、13、2))。
//秒数をユーザーフレンドリーな形式でフォーマットする
フォーマット(日時、"m / d / yh:m:s")。
テキストファイルのインポートでデフォルトのフィールド幅設定が使用できないこれは見落としのようです。それを書き留めて、将来のリリースで解決できるかどうかを確認します。
その間に、以下のスクリプトは現在のデータテーブルで選択されたすべての列のフィールド幅を20に変更します。
cols = current data table() << Get Selected Columns;
for (i=1, i<=nitems(cols), i++,
column(cols[i])<<set field width(20);
);
これを行うためにカスタムメニューまたはツールバーボタンを作成できます。
- ジェフ