如何选择多行

时间:2018-09-24 19:06:27

标签: r

假设我有一个向量,该向量是400个项目(我认为内容无关紧要)。

我想选择1-100和201-300行。

我认为只是

data[1:100,201:300]

但是,当我尝试这样做时,它只返回前100行。

更多情况下,我正在使用长度为400项的语料库,并且我尝试将这些行提取为我的train模型。但是,当我这样做时,它告诉我只有100个文档,而我本应期望200个文档。

1 个答案:

答案 0 :(得分:1)

对数据框(二维数组)进行子集设置时,第一个参数(在逗号之前)将行作为子集,而第二个参数将对列进行子集。因此,如果我们想对行1:100201:300进行子集化,则将它们都输入到第一个参数中,如下所示:

data[c(1:100, 201:300), ]

可复制的示例:

mtcars[c(1:2, 4:5), ]

输出:

                   mpg cyl disp  hp drat    wt  qsec vs am gear carb
Mazda RX4         21.0   6  160 110 3.90 2.620 16.46  0  1    4    4
Mazda RX4 Wag     21.0   6  160 110 3.90 2.875 17.02  0  1    4    4
Hornet 4 Drive    21.4   6  258 110 3.08 3.215 19.44  1  0    3    1
Hornet Sportabout 18.7   8  360 175 3.15 3.440 17.02  0  0    3    2

如果您的数据是一维向量(尚不清楚您的问题是哪一个),那么我们将跳过逗号。但是元素索引仍然必须作为单个向量提供:

vec <- mtcars$mpg
vec[c(1:2, 4:5)]