gpt4 book ai didi

r - 变异用一个函数生成的多列?

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

假设我有一个包含任意数量变量的数据框,外加 3 个 RGB 颜色变量。我想将 RGB 颜色转换为 LAB,并将它们添加到数据框中。这是丑陋的代码:

df <- data.frame(id=c(1:10),red=runif(10),green=runif(10),blue=runif(10))
df <- cbind(df,convertColor(subset(df,select=c("red","green","blue")),from="sRGB",to="Lab"))

如果 mutate 可以通过一次调用生成多个变量,那就太好了;例如(伪代码):
df <- data.frame(id=c(1:10),red=runif(10),green=runif(10),blue=runif(10))
df <- df %>% mutate(list("L","a","b") = convertColor(cbind(red,green,blue),from="sRGB",to="Lab"))

是否有使用 dplyr 的类似方法?

最佳答案

如果你想要一些语法糖,你可以使用以下代码:

df %>% 
select(red,green,blue) %>%
convertColor(from="sRGB",to="Lab") %>%
cbind(df,.)

关于r - 变异用一个函数生成的多列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28554090/

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