In [1]:
import numpy as np

In [2]:
X = np.arange(10)
Y = X + np.random.rand(10)

In [5]:
Y


Out[5]:
array([ 0.45368745,  1.54066375,  2.25994457,  3.03896917,  4.46057472,
        5.58011342,  6.16802149,  7.67117374,  8.3411949 ,  9.72435323])

In [6]:
import rpy2

In [7]:
%load_ext rpy2.ipython

print 5+5


10

In [8]:
%%R -i X,Y -o XYcoef
XYlm = lm(Y~X)
XYcoef = coef(XYlm)
print(summary(XYlm))
par(mfrow=c(2,2))
plot(XYlm)


Call:
lm(formula = Y ~ X)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.35215 -0.14665  0.08785  0.18087  0.20223 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  0.32562    0.13138   2.478   0.0382 *  
X            1.02183    0.02461  41.521 1.25e-10 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.2235 on 8 degrees of freedom
Multiple R-squared:  0.9954,	Adjusted R-squared:  0.9948 
F-statistic:  1724 on 1 and 8 DF,  p-value: 1.247e-10


In [9]:
type(XYcoef)


Out[9]:
numpy.ndarray

In [10]:
XYcoef


Out[10]:
array([ 0.32561824,  1.02183365])

In [ ]: