Код R, упомянутый ниже, использует библиотеку CALIBERdrugdose и возвращает фрейм данных с помощью фукционного доза-преобразователя. Нам нужно вызвать этот скрипт r или rfunc (x) на python, как мы можем это сделать?
library(CALIBERdrugdose)
rfunc <- function(x){
l=doseconvert(c(x))
return(l)
}
когда я попытался запустить его таким образом
robjects.r('''
# create a function `f`
library(CALIBERdrugdose)
rfunc <- function(x){
l=doseconvert(c(x))
return(l)
}
# call the function `f` with argument value 3
rfunc("sadas")
''')
это дало мне эту ошибку ..
RRuntimeError Traceback (most recent call last)
<ipython-input-89-5aea02cf4722> in <module>()
10 # call the function `f` with argument value 3
11 rfunc("sadas")
---> 12 ''')
D:\workspace\lib\site-packages\rpy2\robjects\__init__.py in __call__(self, string)
350 def __call__(self, string):
351 p = _rparse(text=StrSexpVector((string,)))
--> 352 res = self.eval(p)
353 return conversion.ri2py(res)
354
D:\workspace\lib\site-packages\rpy2\robjects\functions.py in __call__(self, *args, **kwargs)
176 v = kwargs.pop(k)
177 kwargs[r_k] = v
--> 178 return super(SignatureTranslatedFunction, self).__call__(*args, **kwargs)
179
180 pattern_link = re.compile(r'\\link\{(.+?)\}')
D:\workspace\lib\site-packages\rpy2\robjects\functions.py in __call__(self, *args, **kwargs)
104 for k, v in kwargs.items():
105 new_kwargs[k] = conversion.py2ri(v)
--> 106 res = super(Function, self).__call__(*new_args, **new_kwargs)
107 res = conversion.ri2ro(res)
108 return res
RRuntimeError: Error in library(CALIBERdrugdose) :
there is no package called 'CALIBERdrugdose'