Как я могу подключить PyRserve с Python
Мне нужно подключить pyRserve в iPython, но при попытке подключиться возникает ошибка. Это ошибка.
conn = pyRserve.connect()
И вот что я получаю:
RConnectionRefused: Connection denied, server not reachable or not accepting connections.
В руководстве pyrserve есть и советы, как это исправить, но я не понимаю, что мне нужно делать. Это совет (Примечание)
Примечание. Когда необходимо открыть удаленное соединение с Rserve, и pyRserve не может подключиться к нему, скорее всего Rserve прослушивает только свое собственное внутреннее сетевое соединение. Чтобы заставить Rserve принимать соединения с других компьютеров, создайте файл с именем /etc/Rserv.conf и добавьте как минимум следующую строку: remote enable Затем перезапустите Rserve.
Итак, мне нужно знать, как реализовать заметку и подключить Rserve в Python
Спасибо всем
2 ответа
В R (с использованием 3.3.2)
install.packages(‘Rserve’)
library(Rserve)
Rserve() # the actual server you will be calling from python
После запуска Rserve() должно появиться следующее сообщение о том, что R-сервер работает: Запуск Rserve... "C:\Users\bkeith\Desktop\R-33~1.2\library\Rserve\libs\x64\Rserve.exe"
В питоне
import pyReserve
conn = pyRserve.connect() # the connection to R
print conn
>> <Handle to Rserve on localhost:####>
После того, как это напечатано, вы можете начать использовать библиотеку.
Не забудьте закрыть соединение, чтобы проверить его, вы можете использовать conn.isClosed:
conn.shutdown()
Вот несколько примеров из библиотеки:
Ex.1 - основной синтаксис
conn.eval(‘2+4’) #basic eval
>> 6.0
Пример 2 - список от Python до R
a = [1,2,3,4] #python list
conn.r.a = a #the R variable is named a as well
print conn.r.a
>>[1,2,3,4] #the R list is now in python as well
Ex.3 - Функция в R
conn.voidEval(‘two <- function(x){ x * 2}’) #declare the function
conn.eval(‘two(9)’) #use the function
>> 18.0
Раньше у меня была точно такая же проблема с вами, и я смог ее решить, установив Rserve, убедитесь, что вы скачали файл с их сайта и запустили следующие коды:
R CMD INSTALL [Rserve_1.8-0.tar.gz] #put in the file name
А потом при запуске этого в терминале:
R CMD Rserve
Должны быть сообщения, указывающие, что r находится в режиме демона, и тогда запуск conn = pyRserve.connect() не должен быть проблемой оттуда.