У меня есть такие данные:
library(dplyr)
glimpse(full_dat)
Observations: 9,720
Variables: 6
$ Product <chr> "Apple iPhone 4s 8GB Unlocked GSM Smartphone w/ S...
$ Brand <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N...
$ Price <dbl> 115, 115, 115, 115, 115, 115, 115, 115, 115, 115,...
$ Rating <dbl> 5, 1, 4, 5, 5, 3, 5, 5, 5, 1, 5, 5, 1, 5, 2, 5, 5...
$ Reviews <chr> "It was new and at a great price! Phone came real...
$ Votes <dbl> 2, 1, 0, 1, 2, 2, 2, 5, 2, 0, 0, 0, 0, 0, 0, 0, 0...
Я хочу изменить значения переменной Product
в отношении строк.Например, если переменная содержит шаблон «iphone 4s», я хочу изменить значение только на «iphone 4s».
Псевдокод:
glimpse(full_dat)
Observations: 9,720
Variables: 6
$ Product <chr> "iPhone 4s", "iPhone 4s", "iPhone 4s", "iphone 4s...
$ Brand <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N...
$ Price <dbl> 115, 115, 115, 115, 115, 115, 115, 115, 115, 115,...
$ Rating <dbl> 5, 1, 4, 5, 5, 3, 5, 5, 5, 1, 5, 5, 1, 5, 2, 5, 5...
$ Reviews <chr> "It was new and at a great price! Phone came real...
$ Votes <dbl> 2, 1, 0, 1, 2, 2, 2, 5, 2, 0, 0, 0, 0, 0, 0, 0, 0...
Я читал аналогичный пост вчто было предложено следующее решение.
full_dat %>%
mutate_at(vars(contains('iphone 4s')), funs(.=='ipohne 4s'))
Однако в моем случае это не работает, то есть значения остаются неизменными.
Вот небольшой образец:
product = c(full_dat$Product[1:5])
dput(product)
c("Apple iPhone 4s 8GB Unlocked GSM Smartphone w/ Siri, iCloud and 8MP Camera - Black",
"Apple iPhone 4s 8GB Unlocked GSM Smartphone w/ Siri, iCloud and 8MP Camera - Black",
"Apple iPhone 4s 8GB Unlocked GSM Smartphone w/ Siri, iCloud and 8MP Camera - Black",
"Apple iPhone 4s 8GB Unlocked GSM Smartphone w/ Siri, iCloud and 8MP Camera - Black",
"Apple iPhone 4s 8GB Unlocked GSM Smartphone w/ Siri, iCloud and 8MP Camera - Black"
)