I have a dataset of 29 cell lines and the IC50 values of a test drug. I want to find a relation between the gene expression profiles of each cell line (nearly 31000 genes) and the IC50 values.
My problem is the huge number of independent variables (the genes) and the low number of samples (cell lines). I'm trying to perform a linear regression using Lasso to reduce the number of genes, dividing the samples in a train set of 14 cell lines and a test set of 15 cell lines. The division is performed by randomly sampling among the 29 samples. The problem is that Lasso is not stable and every time I train the model I get different results.
So I tried to reduce the dimensionality using PCA, but as far as I have read, PCA doesn't work well when the number of covariates is greater then the number of samples. Is this true?
Can you suggest me some kind of regression which is robust when the number of samples is low?