如何删除数据框中的行

时间:2015-09-02 02:11:07

标签: r

我确定这是一个非常基本的问题...我想删除数据集中的四行,以便我可以对其他数据进行相关性测试。在数据集中,我有一列和12行,但我只想要前八行。我的原始数据如下所示:

    Pensacola
A 0.43878650
B 0.08313799
C 0.04348244
D 0.09530939
E 0.04674773
F 0.16009961
G 0.12301393
H 0.05988241
I 0.22225384
J 1.22884931
K 0.89329825
L 0.26534880

我想删除行I,J,K和L,并且仍保持相同的单列格式。 我尝试了以下方法:

row_to_keep = c(TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE)
Pensacola1 = Pensacola[row_to_keep,]

Pensacola1 <- Pensacola[-c(9:12), ]

但两者都返回

[1] 0.43878650 0.08313799 0.04348244 0.09530939 0.04674773
[6] 0.16009961 0.12301393 0.05988241

我只希望数据保留在一列中,其中包含名称为A-H和列名称的#34; Pensacola&#34;。 任何帮助都会很棒!

1 个答案:

答案 0 :(得分:-2)

您说您希望您的数据位于一列中,但如果我们想稍后单独访问某些内容,这可能是个坏主意。如果我们将它分成两个单独的列,我们可以有更多的控制权。同样,使用数据框可能更有意义(看起来它已经在你的问题中,但我们完全可以肯定)。我们把它们称为Pensacola。

当我们这样做时,结果完全符合您的要求。当我运行它时,它会像你喜欢它一样出现。

my_df=read.table("clipboard") # I read in your data
names(my_df)=c("letter","Pensacola")

row_to_keep = c(TRUE, TRUE, TRUE, TRUE, TRUE, TRUE, 
TRUE, TRUE, FALSE,FALSE, FALSE, FALSE)
Pensacola1 = my_df[row_to_keep,]
> Pensacola1
    letter  Pensacola
1      A 0.43878650
2      B 0.08313799
3      C 0.04348244
4      D 0.09530939
5      E 0.04674773
6      F 0.16009961
7      G 0.12301393
8      H 0.05988241