gpt4 book ai didi

R乘法矩阵: but with a special function

转载 作者:行者123 更新时间:2023-12-02 00:06:38 24 4
gpt4 key购买 nike

我有两个方阵 A 和 B。它们的每一项都有 1 或 0。示例如下所示

A
channel
id a b c
1 1 1 1
2 1 0 1
3 1 0 0

B
id
channel 1 2 3
a 1 1 1
b 1 0 0
c 1 1 0

我想将它们相乘。但是,在计算 A%*%B 的每个元素时,我不想要总和,而是想对每个元素进行 OR,然后取结果总和。例如,要计算行=2 和列=3 处的元素,典型的矩阵乘法会执行 (1*1 + 0*1 + 0*0) = 1,而我想执行 (1|1) + (0 |1) + (0|0) = 2。我该怎么做?申请?胶合板?提前致谢。

最佳答案

 A <-scan()
1: 1 1 1
4: 1 0 1
7: 1 0 0
10:
Read 9 items
B<-scan()
1: 1 1 1
4: 1 0 0
7: 1 1 0
10:
Read 9 items

A<-matrix(A, 3, byrow=TRUE)
B<-matrix(B, 3, byrow=TRUE)

与 0/1 的逻辑或与 pmax 相同:

pm <-  function(x,y) sum(pmax(A[x,],B[,y])) 
outer(1:3, 1:3, Vectorize(pm) )

[,1] [,2] [,3]
[1,] 3 3 3
[2,] 3 2 2
[3,] 3 2 1

关于R乘法矩阵: but with a special function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18071253/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com