Skip to main content

Posts

Pathway activation

For biologists using microarrays or sequencing one of the most intersting things is finding if a pathway related to a function is activated or not. To know if a pathway is activated or not usually we need to compare the same pathway in two conditions. It means a subject centered functional scoring method. Which in turns assumes that a pathway is conserved among people and time.   In addition the assumption that is done is that more expression of more genes of a pathways imply an increase of the metabolism of that pathway, which might not be true. Given that pathway has 5 genes, and that all of them are positive regulated implies that a pathway is activated? I have to dive to the origins of this, and see if there is some other way to measure how active a pathway is.

Gene Ontology changes

Until recently I didn't notice the changes on gene ontolology. For me it was a very reliable and stable resource. As my package BioCor is compared with GOSemSim which calculates similarities based on the gene ontologies I found that they change very much. There are constant changes on which terms are removed. I found that changes are shared via a github repository geneontology/go-announcements , which allows one to oppose to some changes.

Coding ecosistem

If you are looking for improvements in your software development you might have read or heard about test, licenses, styles, quality, ... This post is aimed to explain how and which pieces work together for a related goal. I have seen lots of post for each specific tools or steps, but not so much for a list of how do you work with all (or some). Here I list some of these tools related to R packages and GitHub. I edit as I go, so if I missed something let me know and I'll update the list. Previous work Before starting writing a new piece of software as usually avoid "reinventing the wheel", so search for similar packages, I recommend using packagefinder . Which allows you to search for keywords in the existing CRAN packages. Naming When I start a project I try to identify the name with what is its goal and then I check with available . It checks github and dictionaries to suggest a name for your package or check your name Coding just typing R code - Hadley...

Machine learning vs data learning

One of my last post was " I don't do machine learning ". Now, I realized that I am actually doing it (more on this below). However what I was doing previously? I would say I was doing data learning . What is different in machine learning to methods? After reading a lot, I think that the differences are on the focus, a regression (substitute for other procedures that model something) can be used for both machine learning and data learning. When I do a linear regression in data learning I focus on which variables have more weight and improve the adjusted R 2 . I learn from the data what is happening . When I do machine learning I focus on which linear regression is better with the data I have (or with new data). I learn from the data what models are better. That model can be a simple regression or a complicated deep neural network. Both have the same data, but the goal is different. Of course, nowadays where it is not too computationally expensive we want both: ...

RV coefficient

I have recently learned about the RV coefficient and I wanted to share it: The RV coefficient is like a correlation between several variables. In R I found so far several methods that seems to calculate it: FactoMineR::coeffRV subselect::rv.coef MatrixCorrelation::RV However the rv.coeff function from the subselect package works with only one matrix, and the coeffRV and the RV functions differ in they results. This lead me to search for its definition. All the papers mention Escoufier as the originator of these idea. The longest citation (and more relevant) can be found on a preprint , where it is mentioned the year, the author and that several of these papers are in French. In this document we can find the definition which is only followed by the RV function, in the coeffRV function the values are scaled. You can check that: RV(scale(X, scale = FALSE), scale(Y, scale = FALSE)) == coeffRV(X, Y)$rv