我想学习在tidyverse工具中跳过顶部标题和底部标题。

aaaaaaaaaaaaaaaaaaa aaaaaaaaaa aaaaaaa aaaaaaaaaaaa aaaaa aaaaaaaaaaaaaaaaa;;;
aaaaaaaaaaaaaaa;;;
;aaaaa(%);;
;aaaaaaaaaa;aaaaaaaaaaaaa;

 aa/33;3.3;3.3;
 a/33;3.3;3.3;
aa/33;3.3;33.3;
 a/33;3.3;33.3;
 aa/33;3.3;33.3;
 a/33;3.3;33.3;
aaaaaaa aaaaaaaa aa
aaaaaaa: %
aaaaa: aaaaaaaaa aaaaaa aaaaaaa / aaaaaaa aaaaaaaa aa;;;

开头有5行长的顶部标题,而末尾有3行长的底部标题。

如何使用R中的Tidyverse工具跳过它们?

最佳答案

我们可以使用read_delim

library(readr)
df1 <- read_delim("fileN.csv", skip=5, n_max = 6, delim= ";", col_names = FALSE)

最后还有一个额外的;。因此,可以更早删除它,也可以随后删除NA的列
Filter(function(x) !all(is.na(x)), df1)
# A tibble: 6 x 3
#     X1    X2    X3
#   <chr> <dbl> <dbl>
#1  aa/33   3.3   3.3
#2   a/33   3.3   3.3
#3  aa/33   3.3  33.3
#4   a/33   3.3  33.3
#5  aa/33   3.3  33.3
#6   a/33   3.3  33.3

为了使其更具动态性,我们可以从n_max中指定count.fields
df1 <- read_delim("fileN.csv", skip=5, n_max = length(count.fields("fileN.csv"))-(5+2),
                           delim= ";", col_names = FALSE)

关于r - 如何用Tidyverse工具(例如dplyr)跳过顶部标题和底部标题?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/46196322/

10-10 22:41