我在R中创建了一个例行程序,用于导入多个Excel文件并将它们合并成一个大的txt文件。我使用read.xls函数。这些xls文件中的一些单元格中有回车符(“\n”)。然后,当我写入txt文件(write.table)时,R会将此“\n”解释为新行。
我该如何清理xls文件或正确读取它们以删除不必要的“\n”?
谢谢!
我该如何清理xls文件或正确读取它们以删除不必要的“\n”?
谢谢!
你的表格中的列几乎肯定是因子(在R中,默认情况下字符列就是因子)。所以,我们可以只是改变每一列中的因子。
首先是一些虚拟数据
R> dd = data.frame(d1 = c("1", "2\n", "33"),
d2 = c("1\n", "2\n", "33"))
##Default, factor
R> levels(dd[,1])
[1] "1" "2\n" "33"
for
循环来遍历列名:for(i in 1:ncol(dd))
levels(dd[,i]) = gsub("\n","", levels(dd[,i]))
for
循环并使用 sapply
,那么这个方法应该可以工作。##Can this be improved?
sapply(1:ncol(dd),
function(i) levels(dd[,i]) <<- gsub("\n","", levels(dd[,i])))