患者1对四位医生属性的评价的三角模糊函数如下:([1,3,5];0.7,0.1)([1,4,5];0.4,0.3)([1,3,4];0.6,0.1)([1,2,3];0.6,0.15)则该属性的贴近度为多少
时间: 2023-10-05 07:04:40 浏览: 32
对于该属性的评价,我们可以计算其与每一个医生的评价之间的相似度,然后取最大值作为贴近度。具体操作是将患者1对该属性的评价与四位医生的评价逐一进行三角模糊函数之间的相似度计算,然后取最大值。代码实现如下:
```python
import numpy as np
# 定义三角模糊函数
def tri_mf(x, a, b, c):
if x <= a:
return 0
elif a < x <= b:
return (x - a) / (b - a)
elif b < x <= c:
return (c - x) / (c - b)
else:
return 0
# 患者1对四位医生属性的评价
attr_eval = [
([1,3,5], 0.7, 0.1),
([1,4,5], 0.4, 0.3),
([1,3,4], 0.6, 0.1),
([1,2,3], 0.6, 0.15)
]
# 计算该属性与每一个医生评价的相似度
similarity = []
for ae in attr_eval:
val = tri_mf(attr_eval[0][0][1], *ae[0]) # 计算相似度
w1, w2 = ae[1], ae[2] # 设置权重
sim = w1 * val + w2 * (1 - val) # 计算加权相似度
similarity.append(sim)
# 取最大相似度作为贴近度
closeness = np.max(similarity)
print("该属性的贴近度为:{}".format(closeness))
```
运行结果为:
```
该属性的贴近度为:0.7
```
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)