簡體   English   中英

R中具有矩陣運算的Margrittr管

[英]Margrittr pipe with matrix operations in R

我正在研究一些將矩陣作為輸入並提供矩陣作為輸出的函數。 是否可以在不使用的情況下將magrittr管與矩陣一起使用. 占位符? 理想情況下,我希望這些函數像dplyr鏈一樣通過管道相互dplyr 問題是我經常忘記指定. 占位符和出現錯誤。

library(magrittr)
set.seed(123)
m <- matrix(rnorm(10), ncol = 2)  

# This works perfectly:
layout_align_x <- function(n = nodes, anchor, m = matrix){
  m[n, 1] <- m[anchor, 1]
  return(m)}

# This also works perfectly:
layout_align_x(c(1,2), 3, m)

# And this also: 
m %>% layout_align_x(c(1,2), 3, .)

# This returns error: 
m %>% layout_align_x(c(1,2), 3)
#Error in m[anchor, 1] : incorrect number of dimensions

# The goal is:
m %>% 
  layout_align_x(c(1,2), 3) %>% 
  layout_align_x(c(3,4), 5) 

將功能更改為

layout_align_x <- function(m = matrix, n = nodes, anchor){
  m[n, 1] <- m[anchor, 1]
  return(m)
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM