Wednesday 29 January 2014

The Cancer Conspiracy: What would happen if we cured cancer?

Someone is wrong on the internet! It seems quite a few believe there is a cure for cancer, but is being suppressed.

Forget about the heterogeneity of cancer (we didn't just cure Alice's inherited-risk-factor breast cancer, but ALL CANCER), or how insulting this is to people working in the field, but just assume there is a cure. What would happen if someone cured cancer?

The team that discovered a cure would instantly become world famous celebrities, and go down in history as some of the greatest scientists to ever live.

The primary investigators would win the Nobel prize, and if they wanted they could spend the rest of their days being applauded and giving talks around the world.

Huge amounts of investment money would flow their way to push their research forward, or even just to be associated with them (fame factor).

If the drug companies controlled the cure for X years then yes, they would make a large amount of money - but some of that would be re-invested back into more research for future cures when the patents run out. And presumably if people are paying the money, it's worth it (better than dying!) 

One of the biggest winners would be the government, with incredible healthcare savings and possibly increased tax base due to less worker deaths.

The amazing research return on investment would mean that the amount of money flowing to research would increase. The grants would be altered (eg shifting from cancer to heart disease) but the pool would be bigger. The scientists researching gene X because it is involved in cancer pathway P would switch to gene Y in inherited disorder Q.

Don't you realise how annoying it would be to spend the rest of your days basking in riches and glory? Join the Cancer Conspiracy, and suppress those easy cures!

R: hard things are easy and easy things are hard

Statisticians looooove R, and I guess I can see why. For them, it makes hard things easy. For instance MultiDimensional Scaling

Multidimensional scaling (MDS) is a means of visualizing the level of similarity of individual cases of a dataset. It refers to a set of related ordination techniques used in information visualization, in particular to display the information contained in adistance matrix. An MDS algorithm aims to place each object in N-dimensional space such that the between-object distances are preserved as well as possible. Each object is then assigned coordinates in each of the N dimensions. The number of dimensions of an MDS plot N can exceed 2 and is specified a priori. Choosing N=2 optimizes the object locations for a two-dimensional scatterplot.[1]

In EdgeR, this is:

plotMDS(y)

Pretty cool! And you'll probably want to run that once per experiment to visualise your samples and make sure they cluster accordingly. But do you know what I do more than visualise clustering in multi-dimensional space? Concatenate some strings! Which is:

a = paste(a, b, sep='')

Which is longer to type! How about sorting a dataframe by column? How about:

dd = dd[with(dd, order(col)), ]

The above in Python / Pandas is:

a += b
df = df.sort(col)

I totally agree with John D. Cook:

I’d rather do math in a general-purpose language than try to do general-purpose programming in a math language.

That and I gag a little whenever I type a '.' inside a variable name. Let's drag the statisticians towards programming languages rather than letting them drag us into R!