我有一个这样的数据框。
DF <- data.frame(names = c("john", "bob", "frank", "bill", "sam"),
pets = c("dog", "cat", "mouse", "horse", "bird"))
我想根据第二列(pets)中的数据在两个不同的列中添加新数据。
我写了这两行代码,它能工作
DF$color[DF$pets == "dog"] <- "red"
DF$ID[DF$pets == "dog"] <- 1
我怎么能把它们放在一个语句中呢?
2条答案
按热度按时间yfwxisqw1#
使用
或执行连接
nhaq1z212#
技巧是用
data.frame
来merge
。您可以添加一行
和多行(即使DF中没有owl)。
数据框自动按
pets
合并,因为它是共享列名。查看?merge
以获得其他选项。结果按pets
按字母顺序排序,使用merge(., sort=FALSE)
关闭该行为。