我有一个这样的数据框:
d <-
read.table(header=TRUE,text='
gene 0h 4h 24h 48h 72h
1 MIB2 5.329502 5.202208 4.742011 4.8148886 2.263599
2 SLC35E2B 6.461612 6.599991 6.464688 6.5399660 6.378209
3 CALML6 5.200950 5.308204 5.848097 6.2346177 6.744116
4 CALML6 5.200950 5.308204 5.848097 6.2346177 6.744116
5 FAM213B 5.228090 5.379973 5.717725 5.7202588 6.204203
6 PRDM16 2.981332 1.538496 1.263351 0.6315327 3.622116')
我想在第2列:6上执行log2转换,但保留第1列的信息。
我可以使用log(d[2:6],2)
记录变换列2:6但是我丢失了基因信息。
答案 0 :(得分:6)
如果要将其保存回相同的data.frame,请使用:
d[, 2:6] <- log(d[2:6], 2)
d
如果要将其保存到新对象,请首先获取副本:
d.new <- d
d.new[, 2:6] <- log(d[2:6], 2)
d.new
如果您愿意,也可以使用cbind