2015-09-29 2 views
1

Я хотел бы log2 преобразовать все числовые значения в объекте ff с ff.log2 transform ff objects

Используя мой df:

library(ff) 
    df <- 'probeset_id sample1 sample2 sample3 
      probe_1 1834.2 1743.4 1384 
      probe_2 4711 4922 4650 
      probe_3 4555 1387 4650.8 
      probe_4 2588 1325 3258' 
    df <- read.table(text=df, header=T) 
    write.table(df, "del.txt", col.names=T, row.names=F, quote=F, sep="\t") 
    df <- read.table.ffdf(file="del.txt", header=T) 

Я попытался код ниже, но я получил ошибку:

df[, 2:length(df)] <- log(df[2:length(df)], 2) 
Error in log(df[2:length(df)], 2) : 
    non-numeric argument to mathematical function 

Там существует способ применить этот Funtion к ff объектам?

+2

Возможно, вам не хватает запятой ?: 'log (df [, 2: length (df)], 2)' – pcantalupo

ответ

1

log(df[,2:length(df)],2) работает, но sapply(df[,2:length(df)],log2) может работать лучше, если у вас большой цифровой кадр.

Смежные вопросы