【发布时间】:2016-12-30 19:41:54
【问题描述】:
我想按规则创建成对比较矩阵,并将结果以列表格式显示。为此,我有:
数据框包含 5 种产品(达美替尼、氟虫腈、吡虫啉、磺胺嘧啶、噻虫嗪)和 2 种个人笔记 (Indv)
Indv<-c(1,2)
deltametrina<-c(1,1)
fipronil<-c(5,3)
imidaclopride<-c(7,5)
sulfluramida<-c(3,7)
tiametoxam<-c(9,9)
DF<-cbind(Indv,deltametrina,fipronil,imidaclopride,sulfluramida,tiametoxam)
DF
现在,为了创建成对比较矩阵,我的规则是具有最大值的变量减去每个变量的较小数字。但是每个个体(Indv)的最终矩阵必须是列表对象中的向量。
我的输出如下:
[[1]]
deltametrina fipronil imidaclopride sulfluramida tiametoxam
deltametrina 1 4 6 2 8
fipronil NA 1 2 2 4
imidaclopride NA NA 1 4 2
sulfluramida NA NA NA 1 6
tiametoxam NA NA NA NA 1
[[2]]
deltametrina fipronil imidaclopride sulfluramida tiametoxam
deltametrina 1 2 4 2 8
fipronil NA 1 4 4 6
imidaclopride NA NA 1 2 4
sulfluramida NA NA NA 1 2
tiametoxam NA NA NA NA 1
这可能吗?
谢谢
【问题讨论】:
-
为什么对角线上有 1?它们不应该是零吗?
-
生成输出的代码在哪里?期望的结果是什么?
-
bouncyball : 我需要在 1 中转换零。
-
Parfait:我的作品是我自己创造的,哈哈