Сервер Apache Lounge не отвечает за пакет rpy2 на машине с Windows - PullRequest
2 голосов
/ 11 июля 2019
import rpy2.robjects as robjects
from rpy2.robjects import pandas2ri

Конфигурация Apache + mod_wsgi + python 3.x работает очень хорошо на моей машине с Windows. Это пакет rpy2, который на самом деле доставляет мне неприятности. Однако тот же кусок кода работает для меня в командной строке / IDLE.

Я попытался поместить эту конфигурацию в файл httpd.conf по приведенной ниже общей ссылке:

WSGIApplicationGroup %{GLOBAL}

https://serverfault.com/questions/514242/non-responsive-apache-mod-wsgi-after-installing-scipy

Все еще не повезло .. Код неисправности:

import rpy2.robjects as robjects
from rpy2.robjects import pandas2ri

def calculate_from_data(self, path):
    pandas2ri.activate()
    r = robjects.r
    print("running R.........")
    filepath = path + os.sep + 'vectorization.R'
    r.source(filepath)
    vectorize = r['vectorize']
    matrix = vectorize(self.base_data.df)

Apache должен дать мне тот же результат, что и запуск этого кода в командной строке / IDLE дает ?. Нужна помощь в этом, пожалуйста ..

Например: фрагмент кода, который выполняется как ожидается от CMD / IDLE:

import rpy2.rinterface as rinterface
from rpy2.robjects.packages import importr

print("initializing...")
rinterface.initr()
print("  done.")

print("Mapping the R base package...")
base = importr('base')
print("  done.")

выход:

initializing...
  done.
Mapping the R base package...
  done.

Но тот же код не работает на Apache.

...