私は C# .NET に精通しており、.NET のライブラリから、System.Text
などの関数を呼び出したいと思っています。.PadLeft()
string.Format
これが可能であることを誰かが知っていますか?
現時点では、他の人が述べているように、Rから.NETコードを呼び出すのは簡単ではありません。rcom
パッケージの使用は実行可能かもしれませんが、RプログラマーとC#プログラマーの共通部分はかなり小さいため、試した人はほとんどいません。
テクノロジースタックを微調整する場合は、いくつかのオプションがあります。
MATLABは優れた.NET統合を備えており、Rが実行できるほとんどのことを実行できます。
rJava
Rは、パッケージを介してかなり優れたJava統合を備えています。
純粋なRソリューションに満足している場合は、stringr
パッケージによって文字列の処理が非常に簡単になります。 C#の方法 stringr::str_pad
と同じです。、、、およびからベースRは、数値をフォーマットするさまざまな方法を提供します。パッケージには、いくつかのフォーマット機能もあります。string.PadLeft
sprintf
format
formatC
prettyNum
scales
この投稿がしばらく前から出回っていることは知っていますが、StackOverflow での回答の検索は継続的な問題であるため、別のオプションを考えました。
パッケージ rClr は https://r2clr.codeplex.com/ から入手でき、まもなく https://rclr.codeplex.com/に移行されます。文字列操作を含む任意の .NET コードを呼び出すことができます。
library(rClr)
clrCallStatic('System.String', 'Format', 'Hello, the number is {0}', 42L)
## [1] "Hello, the number is 42"
ただし、文字列とその配列は意図的に透過的に R 文字ベクトルに変換されるため、 などのインスタンス メソッドPadLeft
は簡単には使用できません。静的メソッドを持つヘルパー クラスがそのトリックを行います。関心があれば、パッケージに .NET 文字列操作の機能を追加することを検討します。
R と .NET はまったく関係ありません。つまり、そう簡単にはできないということです。
R で使用する正しいメソッドを学ぶだけです。