gpt4 book ai didi

r - 如何对 R 中每一行的一组变体进行变异?

转载 作者:行者123 更新时间:2023-12-04 15:07:00 25 4
gpt4 key购买 nike

我有以下数据:

| parent_sku |    sku   | stock_status | regular_price | tax_class | 
|:----------:|:--------:|:------------:|:-------------:|:---------:|
| ABBBOA01 | ABBBOA01 | instock | 1299 | parent |
| ABBBOA03 | ABBBOA03 | instock | 1299 | parent |
| ABBBOA02 | ABBBOA02 | instock | 1299 | parent |
| ABBBOA04 | ABBBOA04 | instock | 1299 | parent |
我想为每个 parent_sku 变异四个变体, M , L , XLXXL .比如上面的数据应该转化为:
| parent_sku |    sku   | stock_status | regular_price | tax_class |    attribute_size   |
|:----------:|:--------:|:------------:|:-------------:|:---------:|:-------------------:|
| ABBBOA01 | ABBBOA01 | instock | 1299 | parent | M |
| ABBBOA01 | ABBBOA01 | instock | 1299 | parent | X |
| ABBBOA01 | ABBBOA01 | instock | 1299 | parent | XL |
| ABBBOA01 | ABBBOA01 | instock | 1299 | parent | XXL |
| ABBBOA03 | ABBBOA03 | instock | 1299 | parent | M |
| ABBBOA03 | ABBBOA03 | instock | 1299 | parent | L |
| ABBBOA03 | ABBBOA03 | instock | 1299 | parent | XL |
...
and so on
我试过做这样的事情:
data %>% group_by(parent_sku) %>%
rowwise() %>%
mutate(attribute_size = 'M') %>%
mutate(attribute_size = 'L') %>%
mutate(attribute_size = 'XL') %>%
mutate(attribute_size = 'XXL')
但这不起作用。

最佳答案

一种方法是将所有尺寸添加为包含尺寸向量的列表列。然后使用 unnest_longer()将其展开成行。

library(dplyr)
library(tidyr)

# this should work with all the columns
data <- tibble(parent_sku = paste0("ABBBOA0", 1:4),
stock_status = rep("instock", 4))

sizes <- c("M", "L", "XL", "XXL")

data %>%
mutate(attribute_size = list(sizes)) %>%
unnest_longer(attribute_size)
这给了你扩展......
# A tibble: 16 x 3
parent_sku stock_status attribute_size
<chr> <chr> <chr>
1 ABBBOA01 instock M
2 ABBBOA01 instock L
3 ABBBOA01 instock XL
4 ABBBOA01 instock XXL
5 ABBBOA02 instock M
6 ABBBOA02 instock L
7 ABBBOA02 instock XL
8 ABBBOA02 instock XXL
9 ABBBOA03 instock M
10 ABBBOA03 instock L
11 ABBBOA03 instock XL
12 ABBBOA03 instock XXL
13 ABBBOA04 instock M
14 ABBBOA04 instock L
15 ABBBOA04 instock XL
16 ABBBOA04 instock XXL

关于r - 如何对 R 中每一行的一组变体进行变异?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65938808/

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