在 R 中查找、替换和丢弃数据框中的值

find, replace and discard values in dataframe in R

我正在尝试找出如何在 R 中的数据框中查找、替换和丢弃值。我正在使用 R 中内置的 Loblolly 数据集。我想替换生长过程中记录的高度数据具有 NA 的种子 311;然后丢弃三年树的所有数据。

我试过了,但由于某种原因它不起作用:

for('311' in Loblolly$Seed) Loblolly$height <- 'NA'

Matlab 中有一个很好的查找函数,R 中有类似的函数吗?

您可以使用 ifelse() 函数完成此任务。

data(Loblolly)
Loblolly$height <- ifelse(Loblolly$Seed == 311, NA, Loblolly$height) 

以上仅针对种子 311 用 NA 替换了高度。

要创建一个不包括 3 年树龄的新数据框,您可以执行以下操作:

Loblolly2 <- Loblolly[Loblolly$age != 3, ]

下面我只打印第 20-30 行以显示种子 311 的结果:

Loblolly2[20:30, ]
   height age Seed
74  59.07  25  307
19  11.20   5  309
33  28.66  10  309
47  41.66  15  309
61  53.31  20  309
75  63.05  25  309
20     NA   5  311
34     NA  10  311
48     NA  15  311
62     NA  20  311
76     NA  25  311