You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于选定多属性决策方法确定对应替代方案数量k的技术问询

多属性决策方法相关性分析及目标值提取

需求说明

检验TOPSIS、PROMETHEE、VIKOR三种多属性决策方法与DISTANCE方法的相关性,选出相关性最高的方法,再提取该方法取值为1时对应的Alternatives数值。


实现代码

以下是用于相关性分析并筛选最优方法的R代码:

library(dplyr)
library(tidyr)

df <- structure(list(Alternatives = c(3, 4, 5, 6, 7, 8, 9, 10, 11, 12), 
    DISTANCE = c(1L, 10L, 7L, 8L, 9L, 6L, 5L, 3L, 4L, 2L),  TOPSIS = c(1L, 
    8L, 7L, 6L, 10L, 9L, 4L, 3L, 2L, 5L),  PROMETHEE = c(1L, 10L, 
    7L, 8L, 9L, 6L, 4L, 2L, 3L, 5L),  VIKOR = c(1, 9, 7, 6, 10, 
    8, 5, 4, 3, 2)), class = "data.frame", row.names = c(NA, 
-10L))

# 查看数据框
df

# 计算相关性并筛选最优方法
output <- df %>% 
   summarise(across(TOPSIS:VIKOR,   ~cor.test(., DISTANCE, 
       method = "spearman")$estimate)) %>%
  pivot_longer(cols = everything()) %>%
  slice_max(value) %>%
  pull(name) %>%
  select(df, .)

# 查看筛选出的方法列
output

数据框df内容

AlternativesDISTANCETOPSISPROMETHEEVIKOR
31111
4108109
57777
68686
7910910
86968
95445
103324
114233
122552

筛选结果

代码运行后,选出的相关性最高的方法为TOPSIS,其列内容如下:

TOPSIS
1
8
7
6
10
9
4
3
2
5

提取目标变量k

将Alternatives列与筛选出的TOPSIS列合并,得到如下表格:

AlternativesTOPSIS
31
48
57
66
710
89
94
103
112
125

找到TOPSIS取值为1的行,对应的Alternatives数值为3,即变量k = 3。


内容的提问来源于stack exchange,提问作者Antonio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 11:06:20