迭代:一次标记多个列

亚历克斯

我需要一次标记多个变量。我想使用的基本方法是

iris<–iris
attr(iris$Sepal.Length, "label") <- "Sepal Length"

我想对所有变量进行迭代。有没有紧凑的方法可以做到这一点?

我创建了一个变量名称和标签列表

# First create my labels list.
lablist<-str_to_title(str_replace_all(names(iris), pattern = "\\.", replacement = " "))
# Second my variable names list
namelist<- names(iris)

但是,当我尝试迭代此方法时,我的方法失败了:我在做什么错?

# I attempt iteration
map2(namelist,lablist,~attr(iris[,.x], "label") <- .y)

理想情况下,我想将其map用于迭代,但是如果它们更紧凑,更有效,我可以选择其他解决方案

非常感谢你的帮助

哈里·史密斯

尝试这个

replace_labels <- function(df,new_labels){
  column_names <- colnames(df)
  purrr::map2(column_names, new_labels, ~ (df[[.x]] <-`attr<-`(df[[.x]], "label", .y)))
}
iris_labelled <- iris
lablist<-str_to_title(str_replace_all(names(iris), pattern = "\\.", replacement = " "))
iris_labelled[] <- replace_labels(iris_labelled,lablist) 

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

一次迭代=>从Java到Scala的多个输出集合

来自分类Dev

在一次迭代中应用了多个自包含滤波器

来自分类Dev

广度第一次迭代?

来自分类Dev

在ADF-Mobile中一次迭代获得多个行项目

来自分类Dev

Groovy .each只迭代一次

来自分类Dev

一次多个XMLHttpRequest

来自分类Dev

For循环仅执行一次迭代

来自分类Dev

每行迭代一次,Guava HashBasedTable

来自分类Dev

Django在for循环中包含模板标记仅捕获第一次迭代

来自分类Dev

如何一次旋转多个值列?

来自分类Dev

一次跨多个列的BigQuery RANK()

来自分类Dev

基于多个条件的Javascript数组排序(一次迭代)

来自分类Dev

C ++`for`在它应为多个时仅循环迭代一次

来自分类Dev

如何创建多个数据集,每个数据集在for循环中迭代一次?

来自分类Dev

如何一次删除多个列

来自分类Dev

在一次迭代中应用了多个自包含过滤器

来自分类Dev

广度第一次迭代?

来自分类Dev

一次多个XMLHttpRequest

来自分类Dev

每行迭代一次,Guava HashBasedTable

来自分类Dev

for循环仅迭代一次

来自分类Dev

如何一次连接多个列?

来自分类Dev

R数据帧-一次聚合多个列

来自分类Dev

Numpy / Python一次过滤多个列

来自分类Dev

迭代字典而只打印一次

来自分类Dev

每次迭代都从上一次迭代结果开始

来自分类Dev

根据 R 中的单独列标记列中值的第一次连续出现

来自分类Dev

一次迭代多个标签的更改

来自分类Dev

在 R 中绘制多个纵向轨迹时如何仅标记一次?

来自分类Dev

是否可以一次迭代多个 Dict 键?