皆さん、
CVS ファイルから値をインポートしています。 そのうちの 1 つは文字列です。 ただし、JMP は値を読み取ることができません。 最初の画像は、「FlexSEM1000」を除くすべての値がインポートされた cvs ファイルです。 したがって、そこには問題はありません。 ただし、2 番目の画像は F??????? を含む JMP テーブルを示しています。価値。 この問題にどう対処すればよいでしょうか? 関連するコードが添付されています。
ニール
Join_files = Expr(
For( i = 1, i <= N Items( path ), i+=2,
/*area, %area, and pore pixel count*/
jointable1 = Open( path[i] );
//jointable1 << Get Name;
samplename = Substr( jointable1 << Get Name, 1, 18 ); //sample replicate name //
samplename2 = Word(1,samplename, "_"); // Only sample name, no replicate suffix (i.e. a1, a2...)
jointable1 << New Column( "Sample",
Character,
Nominal,
Set Each Value( samplename ) // setting each row in column 1 to samp rep name //
);
/*diameter and pore pixel count*/
jointable2 = Open( path[i + 1] );
dt = Data Table( jointable1 ) << Join(
With( Data Table( jointable2 ) ),
Select( :Sample, :Area, :Name( "%Area" ),:scale, :thick, :pixelrad, :mag, :system),
SelectWith( :pixD1, :count1),
Cartesian Join
);
Close( jointable1, no save );
Close( jointable2, no save );
Columns();
Graphs();
Graphs2();
Graphs3();
dt << Set Name(samplename);
po = dt << get name;
dt << Save(SD1 || po);
);
);
Columns = Eval Expr(
//dt << New Column( "Condition", Character, Nominal, Set Each Value( "1:1" ) );
dt:Name( "%Area" ) << Set Name( "Image A pore area (%)", Numeric, Continuous );
dt:Area << Set Name( "Total Image pixel count (pore_part)", Numeric, Continuous );
dt:scale << Set Name("pix/mm scale", Numeric, Continuous);
dt:pixD1 << Set Name( "Pore Diameter (pixel)", Numeric, Continuous );
dt:count1 << Set Name( "Pore Pixel Count", Numeric, Continuous );
dt:thick << Set Name("d - thickness (m)", Numeric, Continuous);
dt:pixelrad << Set Name("LT Radius", Numeric, Continuous);
dt:mag << Set Name("Mag", Numeric, Continuous);
dt:system << Set Name("Image Mode", Character, Nominal);
dt:Sample << Set Display Width( 150 );

クレイジ
CSV を生成したソース コードに戻ることができ、問題を発見しました。 テーブル内のすべての項目は、対象となる最後の列項目を除き、UTF-8 でした。 コードを修正したところ、すべてが機能するようになりました。 JMP は UTF-8 と UTF-16 の両方を認識していて、すでに UTF-8 を認識していたため、最後の列を認識しなかったのだと思います。
貴重なお時間をありがとうございました。
ニール
クレイジ
素早いアップデート。
csv ファイルを手動で開き、「csv UTF-8」として保存すると、JMP は「FlexSEM1000」を認識することがわかりました。 ただし、これは手動のステップなので省略したいと思います。
ニール
クレイジ
これからもプラグインしていきます。 誰かがそれを機能させることができる場合に備えて、CSV ドキュメントを添付しようとしましたが、サイトではアップロードが許可されていませんでした。
それまでの間、ファイルを生成したプログラムにアクセスして、ファイルがどのようにフォーマットされているかを確認します。 当初、システム ID データは、UTF16 のシステム テキスト ファイル (SEM からの画像を伴う) から読み取られていました。 ただし、UTF8 に変更して csv ファイルに保存するスクリプトが作成されました。
JMP に両方のタイプを調べてもらいましたが、成功しませんでした。
ニール
ありがとうクレイジ、
cvs 値ごとに「フレックスSEM1000」、これを「」に変更するとフレックスSEM "、JMP は読み取ることができます問題なく。
あなたの提案を参考にして調べてみます。
ニール