在使用R语言
- 在使用R进行数据处理时,我们经常可能会需要对每一行的首行(可能是姓名,geneID等)进行比对。在比对过程中有时会遇到一个小问题,就是明明处理前和处理后的geneID没有变化,但是生成的文件中,列名和行名都打上了双引号,导致比对出现问题,这是为什么?
- 这里就要提到在R中write.table()的默认参数了。我们来举个例子
- 这是R已经读取的基因表达水平的表格文件,这里geneID还没有双引号的,最左边是R提供的排序列,之后通过row.names取消掉
- 接下来我们使用write.table()进行输出
-
write.table(new_data,"quote_count.txt",row.names = FALSE)#row.names是指不用软件提供的排序列
-
- 查看结果
- 确实是有双引号,包括列名也有
- 这是R已经读取的基因表达水平的表格文件,这里geneID还没有双引号的,最左边是R提供的排序列,之后通过row.names取消掉
- 解决办法
- 在R中可以输入write.table 进行查询,可以发现有一个quote的参数,这就是双引号的来源
- 对参数进行调整,修改quote = FALSE
-
write.table(new_data,"quote_false_count.txt", quote = FALSE, row.names = FALSE)
- 结果展示
- 确实正常了
- 结果展示
- 在R中可以输入write.table 进行查询,可以发现有一个quote的参数,这就是双引号的来源
- 总结:使用write.table()生成文件会默认给行列名添加双引号,如果我们有必要去除双引号,使用quote参数进行调整