今天用cummeRbund 对cuffdiff的结果进行可视化, 一直报错,之前跑的好好的,找了半天原因, 原来出现在read.table这个函数上;
read.table有一个参数check.names , 其默认值为TRUE,它会自动将变量名转换成唯一的字符型向量
其通过调用make.names函数来实现这一过程,
比如我的原始数据中列名称分别为1,2,3,4,5,6,
make.names(c("", "", "", "", "", ""))
[] "X1" "X2" "X3" "X4" "X5" "X6"
可以看到通过make.names的处理,在每个数字前面加上一个X前缀,使这个变量看上去更像一个字符型变量;
因为变量名已经改变了, 所以只能通过转换后的变量来访问对应数据;
为了让列名称和原始的一致,在read.table时,可以设置check.names=F;