如何删除R中带有读线的空行?

如何删除R中带有读线的空行?,r,R,如果一个文件中有许多空行,如何删除R中带有读行的空行 我知道我可以在read.table中使用blank.lines.skip=T删除它,在readLines中如何 另外,如何删除带有读线的最后一个\n?如何使用选择运算符从读线返回的字符向量中查找非空行 # character vector mimicking readLine output, lines 2, 4, and 5 are blank lines <- c("aaa", "", "ccc", "", "") # [1] "a

如果一个文件中有许多空行,如何删除R中带有读行的空行

我知道我可以在
read.table
中使用
blank.lines.skip=T
删除它,在
readLines
中如何


另外,如何删除带有读线的最后一个
\n

如何使用选择运算符从读线返回的字符向量中查找非空行

# character vector mimicking readLine output, lines 2, 4, and 5 are blank
lines <- c("aaa", "", "ccc", "", "")
# [1] "aaa" ""    "ccc" ""    ""

# select lines which are blank
lines[which(lines=="")]
# [1] "" "" ""

# conversely, lines which are not
lines[which(lines!="")]
# [1] "aaa" "ccc"
#模拟读线输出的字符向量,第2、4和5行为空

线条一个可重复的例子:

  Z <- readLines(textConnection("line1 , stuff, other stuff\nline2 ,junk\nline3, a blank two lines follow\n\n\nline6\n"))
>     Z
[1] "line1 , stuff, other stuff"      "line2 ,junk"                     "line3, a blink two lines follow"
[4] ""                                ""                                "line6"                          
[7] ""                               
>     Z1 <- Z[sapply(Z, nchar) > 0] # the zero length lines get removed.
> Z1
[1] "line1 , stuff, other stuff"      "line2 ,junk"                     "line3, a blank two lines follow"
[4] "line6"          
Z
[1] “第1行,东西,其他东西”“第2行,垃圾”“第3行,闪烁两行”
[4] “第6行”
[7] ""                               
>Z1 0]#删除零长度线。
>Z1
[1] “第1行,东西,其他东西”“第2行,垃圾”“第3行,后面有两行空白”
[4] “第6行”
@安德里建议你做这样的事:

> Z <- scan(textConnection("line1 , stuff, other stuff\nline2 ,junk\nline3, a blink two lines follow\n\n\nline6\n"), 
            what="", sep="\n",blank.lines.skip=TRUE)
Read 4 items
>     Z
[1] "line1 , stuff, other stuff"      "line2 ,junk"                     "line3, a blink two lines follow"
[4] "line6" 
>Z
[1] “第1行,东西,其他东西”“第2行,垃圾”“第3行,闪烁两行”
[4] “第6行”

也许您应该改用
扫描
,这比
读取行
提供更好的控制。