首页
学习
活动
专区
圈层
工具
发布

「R」用purrr实现迭代

迭代方式主要有两种: 命令式编程 - for和while 函数式编程 - purrr 准备工作 purrr是tidyverse的核心r包之一,提供了一些更加强大的编程工具。...接下来我们将学习和使用purrr包,它提供的函数可以替代很多常见的for循环应用。R基础包中的apply应用函数族也可以完成类似的任务,但purrr包的函数更一致,也更容易学习。...使用purrr函数替代for循环的目的是将常见的列表问题分解为独立的几部分: 对于列表的单个元素,我们能找到解决办法吗?如果可以,我们就能使用purrr将该方法扩展到列表的所有元素。...例如有一个图形列表和一个文件名向量,那么我们就可以使用pwalk()将每个文件保存到相应的磁盘位置: library(ggplot2) plots = mtcars %>% split(....$cyl) %>% map(~ggplot(., aes(mpg, wt)) + geom_point()) paths = stringr::str_c(names(plots), ".pdf

5.5K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    R-Purrr的使用,加速数据处理

    R-Purrr的使用,加速数据处理 Tidyverse中包含一个purrr程序包,之前在看数据处理分析时候,一直看到别人的code中,涵盖purrr,map函数,但是一直不知道这个是干什么的,现在发现purrr...Purrr 主要是替换for循环的使用。 Purrr引入了map函数以及一些用于操纵list的新函数。cheatsheet可以速查一些关于Tidyverse使用方法。...这篇文章是快速教你使用purrr。 因为Purrr的操作对象基本上都是关于list,所以对R的基本Number,Vector,dataframe及list又个了解。...(1, 4, 7), addTen) # vector map_chr(c(1, 4, 7), addTen) # string 如果要返回 dataframe,则可以使用map_df()函数。...在这里,我使用了参数名称.x,但我可以使用任何参数。

    1.1K20

    【C++】map和set使用

    顺序容器中的元素是按关键字来保存和访问的。关联式容器有map/set系列和unordered_map/unordered_set系列。...2.set系列的使用 2.1set和multiset参考文档 链接:https://legacy.cplusplus.com/reference/set/ 2.2set类的介绍 set的声明如下,T就是...系列的使用 3.1map和multimap参考文档 链接:https://legacy.cplusplus.com/reference/map/ 3.2map类的介绍 map的声明如下,Key就是map...map的⽀持正向和反向迭代遍历,遍历默认按key的升序顺序,因为底层是⼆叉搜索树,迭代器遍历⾛的中序;⽀持迭代器就意味着⽀持范围for,map⽀持修改value数据,不⽀持修改key数据,修改关键字数据...结束语 set和map的使用总结完了,他们底层都是红黑树,后面详细介绍 OK,感谢观看!!!

    31310

    set和map结构的使用

    这一章的主角set和map它们是一种树形结构,它们的底层是红黑树,即⼀颗平衡⼆叉搜索树 。不过这一章主要是来讲它们的使用,对底层的结构并不做探讨。...使用 pair 可以非常方便地存储和操作一对相关联的数据,比如一个键(key)和一个值(value),这在许多算法和数据结构中都非常有用,如哈希表、映射(map)等。...pair有映射和集合的作用,标准库中的 map、multimap、unordered_map 和 unordered_multimap 等容器内部都使用 pair 来存储键值对。...所以使用了pair结构,pair的作用相当于把key和value绑定在一起。 所以insert的插入方法有以下几种: 2.1.先创建一个pair变量并储入键值对,然后再利用插入map中。...这个区间由 lower_bound 返回的迭代器(包含)和 upper_bound 返回的迭代器(不包含)界定。 这两个函数对于set、map、vector等等使用方法都是相同的。

    11610

    【C++】map和set的使用

    唯一性:set和map要求键唯一;multiset和multimap允许重复键。 常见容器 set:存储唯一键的有序集合。 map:存储键值对的有序映射。...2. set系列的使用 2.1 set和multiset的参考文档 点击快速到达 2.2 set类的介绍 set的声明如下,T就是set底层关键字的类型。...系列的使用 3.1 map和multimap的参考文档 点击快速到达 3.2 map类的介绍 map的声明如下,Key就是map底层关键字的类型,T是map底层Value的类型,map默认要求Key支持小于比较...类型介绍 map底层红黑树节点中的数据,使用pair存储键值对数据。...的差异 multimap和map的使用基本完全类似,主要区别是multimap支持关键字Key冗余,那么insert/find/count/erase都围绕着支持键值冗余有所差异。

    23810

    【C++】map和set的使用

    关联式容器中的元素是按关键字来保存和访问的。关联式容器有map/set系列和unordered_map/unordered_set系列。...2. set系列的使用 2.1 set和multiset参考文档 - C++ Reference 2.2 set类的介绍 • set的声明如下,T就是set底层关键字的类型(其实这里当年命名时...<< endl; } return 0; } 2.7 multiset和set的差异 multiset和set的使用基本完全类似,主要区别点在于multiset支持值冗余,那么insert/find...系列的使用 3.1 map和multimap参考文档 map> - C++ Reference 3.2 map类的介绍 map的声明如下,Key就是map底层关键字的类型,T是map底层value...的差异 multimap和map的使用基本完全类似,主要区别点在于multimap支持关键值key冗余,那么 insert/find/count/erase都围绕着支持关键值key冗余有所差异,这里跟

    33910
    领券