相关疑难解决方法(0)

线性索引上三角矩阵

如果我有一个矩阵的上三角形部分,在对角线上方偏移,存储为线性数组,那么如何(i,j)从数组的线性索引中提取矩阵元素的索引?

例如,线性阵列[a0, a1, a2, a3, a4, a5, a6, a7, a8, a9是矩阵的存储

0  a0  a1  a2  a3
0   0  a4  a5  a6
0   0   0  a7  a8
0   0   0   0  a9
0   0   0   0   0
Run Code Online (Sandbox Code Playgroud)

并且我们想要知道数组中的(i,j)索引,该索引对应于线性矩阵中的偏移,而没有递归.

例如,合适的结果k2ij(int k, int n) -> (int, int)将满足

k2ij(k=0, n=5) = (0, 1)
k2ij(k=1, n=5) = (0, 2)
k2ij(k=2, n=5) = (0, 3)
k2ij(k=3, n=5) = (0, 4)
k2ij(k=4, n=5) = (1, 2)
k2ij(k=5, n=5) = (1, 3) …
Run Code Online (Sandbox Code Playgroud)

c++ arrays numpy linear-algebra triangular

32
推荐指数
3
解决办法
9083
查看次数

R中data.frames的expand.grid函数

我有2个data.frames,包含以下列.

1)A,B,C,D 2)E,F,G,H

我想做的是创建一个新的data.frame,它为expand.grid(1 [,B] 2 [,F])的每个元素都有一行,并保留所有其他列和值与来自原始data.frames的col B和col F的值

我目前正在使用2 for循环这样做,这创建了一个非常大的运行时间,因为我正在处理的data.frames相当大.

这是我正在寻找的截图:

> aa
  A B C D
1 1 x 3 5
2 2 y 4 6
> bb
  E F  G  H
1 7 j  9 11
2 8 k 10 12
> cc
  A B C D E F  G  H
1 1 x 3 5 7 j  9 11
2 2 y 4 6 7 j  9 11
3 1 x 3 5 8 k 10 …
Run Code Online (Sandbox Code Playgroud)

r dataframe

6
推荐指数
2
解决办法
2951
查看次数

如何将函数应用于数据框中的所有行组合?

我无法解决以下有关(通过限制列数简化)数据框“注释”的问题。

require(irr)
# data
annotations <- read.table(text = "Obj1    Obj2    Obj3
Rater1     a       b       c
Rater2     a       b       b
Rater3     a       b       c", header = TRUE, stringsAsFactors = FALSE)
Run Code Online (Sandbox Code Playgroud)

我想将 irr 包中的一致函数应用到行的所有组合(而不是排列),从而产生以下结果。

Agreement rater 1-2: 67%
Agreement rater 1-3: 100%
Agreement rater 2-3: 67%
Run Code Online (Sandbox Code Playgroud)

我需要对所有行组合运行一个函数,并且该函数需要访问多个/所有列。

我已经找出了问题的部分答案;我已经生成了一个正在运行的组合列表combn(rownames(annotations), 2),但我不知道如何在不编写低效的 for 循环的情况下使用该列表。

我尝试过应用,如 中所示apply(annotations, 1, agree),但我只能让它在一行上工作,而不是前面提到的组合。

有人知道如何继续吗?

更新:根据您的建议,以下解决方案有效。(我使用了kappa2irr 包而不是agree,但主要问题的解决方案保持不变。)

require(irr) #require the irr library for agreement calculations
annotations <- read.table(text = "Obj1    Obj2    Obj3
Rater1 …
Run Code Online (Sandbox Code Playgroud)

combinations r rows dataframe

3
推荐指数
1
解决办法
2550
查看次数

标签 统计

dataframe ×2

r ×2

arrays ×1

c++ ×1

combinations ×1

linear-algebra ×1

numpy ×1

rows ×1

triangular ×1