Search code examples
pythonrrpy2scalarvector-multiplication

How to multiply scalar by ListVector in rpy2


I'm running the following analysis and trying to plot the inverse logit of my model:

R.plot(formula, data=data, ylab = 'P(outcome =  1 | outcome)', xlab = 'SURVRATE: Probability of Survival after 5 Years', xaxp = c(0, 95, 19))
a = R.coef(mod1)[0] 
b = R.coef(mod1)[1]
R.curve(invlogit(a + b*R.x)) 

invlogit is an R function that I am accessing via STAP.

Everything works great, but when I run the curve function, I get an error that TypeError: unsupported operand type(s) for *: 'float' and 'ListVector'...

I've tried various ways of handling this, like using np.multiply among others, all to no avail. How do I handle multiplication of a scalar by a ListVector within python?


Solution

  • Kludgey solution is to just use the rmagic commands. It appears to be the path of least resistance to convert all my R code to the rpy2 equivalent.