← Back to team overview

dhis2-devs team mailing list archive

Re: DHIS2 with R

 

On 27 May 2010 11:15, Jason Pickering <jason.p.pickering@xxxxxxxxx> wrote:
> Hi Bob,
>
> Yes, I suspect that most R users would probably want to do things
> their own way. It has a rather steep learning curve. :)
>
> As for canned R scripts, the best way would probably with with PL/R, a
> procedural Postgresql language which utilizes R.
>
> http://www.joeconway.com/plr/doc/index.html
>
> I have done some very basic testing and it seems to work just fine on
> the server side.

Swings and roundabouts to a certain extent.  The main thing is that
the r scripts are evaluated using the r c library.  If they were
invoked from within java/dhis then I guess data access would be slower
than from pl/r (we'd need to have a way to get the data to the r
interpreter), but number crunching would be similar and would also
work with mysql and friends.  Not sure which of these are bigger
problems in typical/possible scenarios.

>
> I think they are two separate problems really, but I totally agree, C
> is likely going to be faster than Java for big operations. However, I
> do think (as all of you know) that the use of stored procedures (with
> the wrapper facade type of approach) for certain functions (like
> aggregation and heavy cross tab operations) would be much better to be
> executed on the database server as a native stored procedure.
>
> Regards,
> Jason
>
>
>
>
> On Thu, May 27, 2010 at 11:45 AM, Bob Jolliffe <bobjolliffe@xxxxxxxxx> wrote:
>> We've talked before about integrating scripting engine (such as R)
>> into dhis : http://www.rforge.net/rscript/
>>
>> But my guess is that most R users are going to be of a level of
>> sophistication that they would be most comfortable doing the kind of
>> thing you describe - conecting directly to db with r client and doing
>> their stuff.
>>
>> OTOH if there were sufficiently useful "canned" dhis R scripts which
>> could take some number crunching load off the jvm and produce canned
>> useful analysis then that would be different.
>>
>> Sadly I don't know sufficient about R to know.  But I sense it ...
>>
>> Regards
>> Bob
>>
>> On 27 May 2010 10:08, Jason Pickering <jason.p.pickering@xxxxxxxxx> wrote:
>>> Hi everyone. I have had a recent question from a user about how DHIS2
>>> can be used with R. I am including a trivial example here about how to
>>> use R as as a client to access data and produce a graph in DHIS2.
>>>
>>> Just get a copy of R  and install the DBI and RPostregSQL packages with
>>>
>>>>install.packages()
>>>
>>>
>>> After that, just connect to the DB, retrieve your data (in this case
>>> from a report table) and produce a graph.
>>>
>>>>library(DBI)
>>>
>>>>library(RPostgreSQL)
>>>
>>>>drv <- dbDriver("PostgreSQL")
>>>
>>>>con <- dbConnect(drv, dbname="dhis2_zm_prod2", user="postgres", password="postgres")
>>>
>>>>rs <- dbSendQuery(con, "SELECT * FROM _report_malaria_indicators_district where
>>> organisationunitid = 3904")
>>>
>>>>data <- fetch(rs,n=-1)
>>>
>>>>barplot(data$malaria_confirm_incidence, names.arg=as.character(data$periodname), main=as.character(data$organisationunitname[1]),las=2)
>>>
>>>>dev.print(png, file="/home/jason/test.png")
>>>
>>> Regards,
>>> Jason
>>>
>>> ---
>>> Jason P. Pickering
>>> email: jason.p.pickering@xxxxxxxxx
>>> tel:+260968395190
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~dhis2-devs
>>> Post to     : dhis2-devs@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~dhis2-devs
>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>
>
>
>
> --
> --
> Jason P. Pickering
> email: jason.p.pickering@xxxxxxxxx
> tel:+260968395190
>



Follow ups

References