根据一系列行名称从数据框中删除行

时间:2015-01-22 14:51:15

标签: r

我想从data.frame中删除所有行,例如,行号10加上后续的4行,即从第10行到第14行。

删除行的起始行(在本例中为行号10)来自测试,因此我将测试的输出保存在my_test变量中。简而言之,我必须从my_test变量加4行中删除行。我试过了:

myfile_cleaned <- my_original_file[-c(test:test+4),]   

但它不起作用。 有人可以帮帮我吗?

2 个答案:

答案 0 :(得分:3)

您可以使用

myfile_cleaned <- my_original_file[-(test:(test + 4)), ]

由于R的运算符优先级,:之前会计算+。因此,您需要额外的括号。

答案 1 :(得分:1)

这种情况下使用seq函数可能比使用:更好,两者都是为了读者的清晰度和优先级的正确性。

myfile_cleaned <- my_original_file[ -seq( from=test, length.out=5, by=1), ]

myfile_cleaned <- my_original_file[ seq( from= -test, length.out=5, by=-1), ]