[R] python

Whit Armstrong armstrong.whit at gmail.com
Sat Nov 21 20:04:16 CET 2009


We have been using pymc as an alternative to WinBUGS, and have been
very pleased with it.  I've begun working on an R2Pymc package, but
don't have anything ready for sharing yet.

Here's the pymc page:
http://code.google.com/p/pymc/

and the repo is here:
http://github.com/pymc-devs/pymc

I've converted a few of the radon examples from Gelman's ARM book to
pymc.  You can find them here:
http://github.com/armstrtw/pymc_radon

the original bugs examples are here:
http://www.stat.columbia.edu/~gelman/arm/examples/radon/

-Whit


On Sat, Nov 21, 2009 at 1:21 PM, Jean Legeande <jean.legeande at gmail.com> wrote:
> Thank you Paul, Barry and Patrick.
>
> I will do what you recommand (the profiling).
>
> I have heard several times that for example Matlab would be faster than R...
> This is why I thought of switching to Python, though it is also interpreted.
> I thought it would be faster.
>
> Best,
> Jean
>
> 2009/11/21 Patrick Burns <pburns at pburns.seanet.com>
>
>> One little thing that I think Barry
>> meant to say.
>>
>> If the bottleneck is in your code, you
>> may be able to improve the situation
>> enough by merely rewriting the R code
>> of your function.  If that doesn't work,
>> then you can move to C.
>>
>>
>>
>> Patrick Burns
>> patrick at burns-stat.com
>> +44 (0)20 8525 0696
>> http://www.burns-stat.com
>> (home of "The R Inferno" and "A Guide for the Unwilling S User")
>>
>> Barry Rowlingson wrote:
>>
>>>  On Sat, Nov 21, 2009 at 2:29 PM, Jean Legeande <jean.legeande at gmail.com>
>>> wrote:
>>>
>>>> Dear R users,
>>>>
>>>> I would like to make my R code for MCMC faster. It is possible to
>>>> integrate
>>>> C code into R but I think C is too complicated for me. I would need a C
>>>> introduction only for MCMC and I do not know if such a thing exists.
>>>>
>>>> I was thinking of Python (and scipy). Where could I read about its
>>>> integration into R ? How developed are the statistical packages in Python
>>>> ?
>>>> I could not find a Python package on the web with functions to simulate
>>>> Wishart, or multivariate gamma or student distributions.
>>>>
>>>> Since I am a little bit lost, I write this message to the R help list.
>>>> Sorry
>>>> for these naive questions and thanks for your help.
>>>>
>>>>
>>>  Have you done a profile of your MCMC code to see where the bottleneck
>>> is? Without doing that first any effort could be a total waste of
>>> time.
>>>
>>>  R can do a lot of it's calculations at the same level as C, so if 80%
>>> of your time is spent inverting matrices then converting to Python or
>>> C (or even assembly language) isn't going to help much since R's
>>> matrix inversion is done using C code (and quite possibly very
>>> optimised C code with maybe some assembly language too).
>>>
>>>  So do a profile (see ?Rprof) and work out the bottleneck. It might be
>>> one of your functions, in which case just re-writing that in C and
>>> linking to R (see programmers guide and a good C book) will do the
>>> job.
>>>
>>>  My hunch is that Python and R run at about the same speed, and both
>>> use C libraries for speedups (Python primarily via the numpy package).
>>>
>>>  You can call the GSL from Python, and there are probably tricks for
>>> getting the distributions you want:
>>>
>>> http://www.mailinglistarchive.com/help-gsl@gnu.org/msg00096.html
>>>
>>>  describes how to get samples from a Wishart.
>>>
>>>  However using the GSL from Python probably wont be much faster than
>>> using R because again it's all at the C level already. Did I suggest
>>> you profile your code?
>>>
>>> Barry
>>>
>>> ______________________________________________
>>> R-help at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-help
>>> PLEASE do read the posting guide
>>> http://www.R-project.org/posting-guide.html<http://www.r-project.org/posting-guide.html>
>>> and provide commented, minimal, self-contained, reproducible code.
>>>
>>>
>
>        [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>




More information about the R-help mailing list