美文网首页R 语言 生信分析
[读书笔记r4ds]III.Program 编程技巧

[读书笔记r4ds]III.Program 编程技巧

作者: 茶思饭 | 来源:发表于2019-11-20 08:50 被阅读0次

    Programming is a cross-cutting skill needed for all data science work.
    Over time, you want your code to become not just easier to write, but easier for others to read.

    18 Pipes 管道符 %>%

    %>%来自于magrittr package
    %>%管道符能够让代码更容易阅读和理解。

    管道符在2类公式中不起作用:

    -- use the current environment. e. g. assign() ,get() , load().
    -- use lazy evaluation. tryCatch(),try(), suppressMessages(),suppressWarnings().

    • When not to use the pipe:
    • 处理步骤过长,超过10步。使用一些中间变量可以让debug变的
    • 有多个输入或多个输出。
    • 操作步骤构成了一张复杂关系的有向图。You are starting to think about a directed graph with a complex dependency structure.

    Other tools from magrittr

    • %T>% 向左操作符,类似%>%只不过它是把左边的值做为传递的值,而不是右边的值。这样可以%T>% 之后加上print()、plot()函数,展示中间计算过程。

      image.png
    • %$% 解释操作符(exposition pipe-operator) 的作用是把左侧dataframe中属性名传给右侧,让右侧的调用函数直接通过col name,就可以获取左侧的数据。

      image.png
    • %<>% 复合赋值操作符(compound assignment pipe-operator) 功能与 %>% 基本是一样的,对了一项额外的操作,就是把结果写到左侧对象

      image.png

    相关文章

      网友评论

        本文标题:[读书笔记r4ds]III.Program 编程技巧

        本文链接:https://www.haomeiwen.com/subject/cmgjmctx.html