根据条件在数据框中选择观察(值)

时间:2018-09-25 16:19:36

标签: r dataframe

我有一个数据框,其中的变量dbl包含唯一值(我们称之为Variable1)。 Variable2包含10个chr值之一(例如New York)。

我想做的是,仅在唯一的Variable1== 1234567890处,将New York替换为London

换句话说,如何根据列x中的唯一ID更改列y中变量的单个实例?

我怀疑这可能很简单。预先感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

您可以在[]<-对象上使用子设置功能data.frame,该功能可以帮助您借助逻辑条件确定所需的行,然后将所需的值分配给该行。请参见下面的代码:

# simulation of data.frame with 10 rows

df <- data.frame(
  Variable1 = c(1234567890, 1:4),
  Variable2 = c("New York", letters[1:4]),
  stringsAsFactors = FALSE
)

df
#    Variable1 Variable2
# 1 1234567890  New York
# 2          1         a
# 3          2         b
# 4          3         c
# 5          4         d

# change "New York" for "London" for id 123456789
df[df$Variable1 == 1234567890, ]$Variable2 <- "London"
df
#    Variable1 Variable2
# 1 1234567890    London
# 2          1         a
# 3          2         b
# 4          3         c
# 5          4         d
相关问题