gpt4 book ai didi

r - 根据另一列的字符串值创建新列

转载 作者:行者123 更新时间:2023-12-04 02:45:42 25 4
gpt4 key购买 nike

我在 r 中有一个数据框,其中有一列是一个大字符串。我想使用该字符串创建一个具有特定值的新列。

这是示例数据框:

dom <- data.frame(
Site = c("alpha", "beta", "charlie", "delta"),
Banner = c("testing_Watermelon -DPI_300x250 v2" , "notest_Vanilla Latte-DPI_300x250 v2" , "bottle :15s","aaaa vvvv cccc Build_Mobile_320x480")
)

现在,如果 Banner 列包含包含 WatermelonVanilla 的字符串,那么新列 label 应该只有值 WatermelonVanilla 否则 Default。以下是预期的数据框。

我如何使用 grep 或其他任何东西在其中设置多个条件?

dom_output <- data.frame(
Site = c("alpha", "beta", "charlie", "delta"),
Banner = c("testing_Watermelon -bbb_300x250 v2" , "notest_Orange aaa_300x250 v2" , "bottle :15s","aaaa vvvv cccc 320x480"),
label = c("Watermelon","Vanilla","Default","Default")
)

最佳答案

library(stringr)
dom$label = str_extract(dom$Banner, "Watermelon|Vanilla")
dom$label[is.na(dom$label)] <- "Default"
dom
# Site Banner label
# 1 alpha testing_Watermelon -DPI_300x250 v2 Watermelon
# 2 beta notest_Vanilla Latte-DPI_300x250 v2 Vanilla
# 3 charlie bottle :15s Default
# 4 delta aaaa vvvv cccc Build_Mobile_320x480 Default

关于r - 根据另一列的字符串值创建新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57365584/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com