Rserve: pyServe не может вызывать базовые функции R

Я вызываю Rserve из python, и он запускается для основных операций, но не, если я вызываю базовые функции как min

import pyRserve

conn = pyRserve.connect()

cars = [1, 2, 3]
conn.r.x = cars
print(conn.eval('x'))
print(conn.eval('min(x)'))

Результат:

[1, 2, 3]
Traceback (most recent call last):
  File "test3.py", line 9, in <module>
    print(conn.eval('min(x)'))
  File "C:\Users\acastro\.windows-build-tools\python27\lib\site-packages\pyRserve\rconn.py", line 78, in decoCheckIfClosed
    return func(self, *args, **kw)
  File "C:\Users\acastro\.windows-build-tools\python27\lib\site-packages\pyRserve\rconn.py", line 191, in eval
    raise REvalError(errorMsg)
pyRserve.rexceptions.REvalError: Error in min(x) : invalid 'type' (list) of argument

Вы знаете, в чем проблема? Спасибо

1 ответ

Решение

Ты должен попытаться min(unlist(x)).

Если список простой, вы можете просто попробовать as.data.frame(x).

Для более сложного списка у StackOverFlow есть много других ответов.

Другие вопросы по тегам