RにJMP列名を送信するこんにちは、みんな、
JSLのR JMPからRへの名前関数で問題があるのは私だけですか?単純な名前では問題なく動作しますが、JMPでちょっと変わった名前(たとえば、括弧やギリシャ記号など)があるとすぐに、返される名前はRデータフレームに格納されている名前とまったく同じにはなりません。R送信(データテーブル)コマンドから。この問題に対する簡単な解決策はありますか?JMP列名をより単純なものに変更するだけでは不十分ですか?
ありがとう、イヴ
再:RにJMP列名を送るあなたの解決をありがとう。それまでの間、連想配列を使用して問題を解決するための別の方法を示しました。基本的に、データテーブルをRに送信し、Rが名前を付けてJMPに戻すことを決定した列をすべて取得します。次に、JMP名とR名の間に連想配列を作成します。何かのようなもの:
R送信 (dt);
R送信する ( "Rnames <-names(dt)" ;
RnamesinJMP = Rゲット (名前);
aa = 連想配列 (JMP名、R名sin JMP);
<< Get value(JMPname)ステートメントを使用して、任意のJMP列名をそれと同等のRに変換できます。
イラク
再:RにJMP列名を送るあなただけではありません;回避策は次のとおりです。
Names default to here( 1 );
//Send sample data to R
dt = New Table( "Original",
Add Rows( 2 ),
New Column( "Hello (there)",
Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [1, 2, 3] )
),
New Column( "╓ < Greek", Character, "Nominal", Set Values( {"a", "b", "c"} ) )
);
R Init();
R Send(dt);
//Get column names and send them to R
cn = dt << get column names( String );
R Send(cn);
//Set column names
R Submit( "colnames(dt) = cn" );
//Names might not appear to match
R Submit( "print(dt)" );
//But they should return correctly
dtr = R Get(dt) << NewDataView;
dtr << Set name("Returned");
R Term();