[BioC] problem with GOHyperGParams in package Category

Mark W Kimpel mwkimpel at gmail.com
Thu Mar 6 23:15:47 CET 2008


As I see it, Category is the general tool, and GOstats is like a 
plug-in. I believe the goal is for other plug-ins to work such as KEGG 
and others that may arise. Category, in a sense, becomes a wrapper for 
these other packages so that the end-user only has to deal with one API 
(I like that very much).

Because in R packages are not loaded until they are needed, why not have 
each plug-in package have a file that says "I am a Category plug-in" and 
each time Category loads it scans the library for compatable plug-ins. A 
Category method such as "enabledPlugins(Category)" would tell the user 
what "Categories" are available.

Perhaps there is a better R-centric way of doing this, but the goal 
would be to allow better communication between objects, both those 
currently in use and those available. A plug-in package would only be 
loaded when its sub-class was invoked.

Not a quick fix, I understand!


Mark W. Kimpel MD  ** Neuroinformatics ** Dept. of Psychiatry
Indiana University School of Medicine

15032 Hunter Court, Westfield, IN  46074

(317) 490-5129 Work, & Mobile & VoiceMail
(317) 204-4202 Home (no voice mail please)



Seth Falcon wrote:
> On Thu, Mar 6, 2008 at 7:32 AM, Tony Chiang <tchiang at fhcrc.org> wrote:
>> As far as I know, GOstats depends on Category, so that the user can
>> create the GOHyperGParams class and then use the other functions and
>> methods in GOstats to carry out the rest of the analysis. In the
>> past, there has been some hiccups when there is bilateral
>> dependencies, but maybe this has been resolved.
> Yes, GOstats depends on Category (one way to verify is by inspecting
> the DESCRIPTION files).
> Circular dependencies (the Depends field) don't work.  I believe it is
> possible to have cycles in the Suggests field.  Whether or not having
> Category suggest GOstats would improve matters I'm less certain.
>>  I can see your point in that you can perform the categorical
>>  analysis for KEGG or pFAM using Category alone, but need to load
>>  GOstats for the GO analysis. It is a minor confusing issue I agree,
>>  but I am sure that Robert and Seth had a good reason to structure
>>  the packages as they are.
> It is more confusing than I would like, but there was some thought
> given to the current organization.  At the time it made sense to
> remove the common code for Hypergeometric testing from GOstats since
> there is nothing GO-specific about that code.  Category seemed the
> most natural landing place and was already a dependency of GOstats.
> The intention was to be able to perform GO analyses just using
> Category.  GOstats adds the ability to perform the conditional
> analysis.
> Anyhow, I share your frustration at the organization.  I think the end
> result is somewhat more difficult for end users than I would like.
> However, I don't have a better solution at present.
> + seth
> --
> Seth Falcon | seth at userprimary.net | http://userprimary.net/user/

More information about the Bioconductor mailing list