Подтвердить что ты не робот

Вызов .NET/С# из R

Я хотел бы использовать API из R, который доступен только в .NET. Существует ли стандартный метод, который можно использовать для вызова .NET С# кода из R? Если да, то как я могу это сделать?

4b9b3361

Ответ 1

Еще один вариант, который могут рассмотреть читатели этой дискуссии, - это пакет rClr, над которым я уже пару лет работаю, чтобы получить доступ к произвольному .NET-коду из R. Это родной брат R.NET, который, наоборот, является способом доступа к R из .NET.

Чтобы дать аромат пакета rClr, канонический "Hello World" выглядит так:

library(rClr)
clrLoadAssembly('c:/path/to/myassembly.dll')
myObj <- clrNew('MyNamespace.MyClass,MyAssemblyName')
clrCall(myObj, 'SayHelloWorld')

Обратная связь и предложения приветствуются через веб-сайт.

Ответ 2

Предоставление .NET dll как COM-dll, а затем вызов COM-объекта в dll из R, кажется единственным способом. И есть пакет для него: http://cran.r-project.org/web/packages/rcom/rcom.pdf

Если вы не можете сделать COM-dll, потому что это сторонняя dll, вы всегда можете создать новую DLL-интерфейс, например .NET, с COM-интерфейсом, где вы можете назвать фактическую dll.