當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


R magrittr compound 分配管道

將對象通過管道轉發到函數或調用表達式中,並使用結果值更新 lhs 對象。

用法

lhs %<>% rhs

參數

lhs

既充當初始值又充當目標的對象。

rhs

使用 magrittr 語義的函數調用。

細節

賦值管道 %<>% 用於更新值,方法是首先將值通過管道傳輸到一個或多個 rhs 表達式中,然後分配結果。例如, some_object %<>% foo %>% bar 相當於 some_object <- some_object %>% foo %>% bar 。它必須是鏈中的第一個 pipe-operator ,但否則它的工作方式類似於 %>%

也可以看看

%>% , %T>% , %$%

例子

iris$Sepal.Length %<>% sqrt

x <- rnorm(100)

x %<>% abs %>% sort

is_weekend <- function(day)
{
   # day could be e.g. character a valid representation
   day %<>% as.Date
   
   result <- day %>% format("%u") %>% as.numeric %>% is_greater_than(5)
   
   if (result)
     message(day %>% paste("is a weekend!"))
   else
     message(day %>% paste("is not a weekend!"))
   
   invisible(result)
}

源代碼:R/pipe.R

相關用法


注:本文由純淨天空篩選整理自Stefan Milton Bache等大神的英文原創作品 Assignment pipe。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。