粗糙集 matlab,粗糙集理论权重确定方法用matlab实现
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
谁能将下面这段代码用matlab实现?
from __future__ import division
import copy
#计算|X|
def ind(samples = []):
#根据每行数据的值进行分组,值和数据条数存在列表number中
number = []
for u in samples:
if len(number) == 0:
number.append([u,1])
else:
flag = 0 #变量flag表示u是否在number中
for i in number:
if i[0] == u:
i[1] = i[1] + 1
flag = 1
if flag ==0:#u不在number中则新添一条记录到number中
number.append([u,1])
X = 0 #X表示|X|
for i in number:
X = X + i[1]*i[1]
return X
#计算单属性重要度,结果保存到列表Sig中
def Sig(samples = []):
Sig = []
for i in range(len(samples[0])):
samplesX = copy.deepcopy(samples)
for u in samplesX:
u.pop(i)
Sig.append(round((1-ind(samples)/ind(samplesX)),2))
return Sig
#用双属性组合方法计算重要度,结果保存到列表Sig2中
def Sig2(samples = []):
Sig = []
Sig2 = []
SigDouble = []#保存双属性组合重要度
for i in range(len(samples[0])):
samplesX = copy.deepcopy(samples)
SigDouble.append([])
for u in samplesX:
u.pop(i)
Sig.append(round((1-ind(samples)/ind(samplesX)),2)) #计算单属性重要度
for j in range(len(samplesX[0])):
samplesY = copy.deepcopy(samplesX)
for u in samplesY:
u.pop(j)
SigDouble[i].append(round(( 1-ind(samples)/ind(samplesY)),2))
for i in range(len(Sig)):
sum_SigDouble = 0
for j in SigDouble[i]:
sum_SigDouble = sum_SigDouble + (j-Sig[i])
Sig2.append(round(abs((Sig[i]-sum_SigDouble/2/3)),3))
print Sig,SigDouble,Sig2
return Sig2
#计算各属性客观权重,结果保存到列表P中
def P(Sig = []):
P = []
sum_Sig = 0
for i in Sig:
sum_Sig = sum_Sig + i
for i in Sig:
P.append(round(i/sum_Sig,3))
return P
samples = []
for line in open(*samples.txt*):
u = line.strip(*\n*).split(*\t*) #去掉换行符,用tab分割字符
samples.append(u) #获得完整样本
#去掉决策属性
n = len(samples[0])
for u in samples:
u.pop(n-1)
print u*属性客观权重:*
print P(Sig(samples))
print u*双属性组合方法客观权重:*
print P(Sig2(samples))
粗糙集 matlab,粗糙集理论权重确定方法用matlab实现相关推荐
- 粗糙集matlab,粗糙集理论权重确定方法用matlab实现
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 谁能将下面这段代码用matlab实现? from __future__ import division import copy #计算|X| def in ...
- 多属性决策的权重确定方法及matlab 程序
本文介绍11种多属性决策权重确定方法及matlab 程序. 1.列和求逆归一化方法(NHM) 1 2.行和归一化方法(NRA) 1 3.和积法(ANC) 1 4.方根法(NGM) 1 5. 特征向量法 ...
- 基于matlab 的燃油喷雾图像处理方法,基于MATLAB的燃油喷雾图像处理方法.doc
基于MATLAB的燃油喷雾图像处理方法 基于MATLAB的燃油喷雾图像处理方法 摘要:提出了基于MATLAB的燃油喷雾图像处理方法.通过对喷雾图像的采集, 分割和滤波处理, 将多幅图像转换融合为一幅 ...
- 和积法用MATLAB怎么做,权重确定方法归纳解读
权重确定方法归纳 多指标综合评价是指人们根据不同的评价目的,选择相应的评价形式据此选择多个因素或指标,并通过一定的评价方法将多个评价因素或指标转化为能反映评价对象总体特征的信息,其中评价指标与权重系数 ...
- matlab一般函数的绘制方法,基于MATLAB的函数图像绘制方法
C DOI:10.16707~.cnki.fjpc.2017.01.084 E 晒 亍嚣 基于 MATLAB的函数图像绘制方法 张笑笑 一,童 键 z (1湖南省长沙市第一中学 湖南 长沙 410() ...
- 随机信号功率谱密度函数理论、估计方法及MATLAB代码
文章的内容整理自网络,仅Matlab代码部分进行了部分修正,具体而言: 理论部分来自:现代通信原理2.5:确定信号的能量谱密度.功率谱密度与自相关函数 估计和代码部分来自: 随机信号功率谱密度估计 P ...
- 基于matlab的人脸五官边缘检测方法,基于MATLAB的人脸识别系统的设计
基于MATLAB的人脸识别系统的设计(论文12000字,外文翻译,参考程序) 摘要:本文基于MATLAB平台设计了一款简单的人脸识别系统,通过USB摄像头来采集图像,经过肤色方法进行人脸检测与定位,然 ...
- Matlab | 数字信号处理:Matlab语言的基本使用方法(matlab代码版)
========================================== 博主github:https://github.com/MichaelBeechan 博主CSDN:https:/ ...
- matlab 开普勒方程,理论力学中非线性问题的 MATLAB数值解
第20卷第10期大 学 物 理Vol.20No.10 2001年10月COLL EGE PHYSICS Oct.2001 基础物理教学现代化问题 理论力学中非线性问题的MAT LAB 数值解 收稿日期 ...
最新文章
- ICRA 2022 | 基于多模态变分自编码器的任意时刻三维物体重建
- SpringCloud:Zuul 路由访问(基本使用、路由功能、过滤访问、服务降级)
- java分布式对象——远程方法中的参数和返回值+远程对象激活
- gwt-2.8.2下载_从GWT开发人员的角度概述Scala.js
- instanceof_您真的需要instanceof吗?
- 【kafka】控制台默认不能发送大数据 4096 4095 4129
- Spark学习:spark读取HBase数据报异常java.io.NotSerializableException
- 难道真的是RedBook错了?
- java计数器_Java高效计数器
- [解疑][TI]TI毫米波雷达系列(五):恒虚警算法(CFAR)原理
- 什么是运维?运维主要做哪些工作?
- [转]关于Gmail打不开的解决办法
- iPhone 14分辨率,屏幕尺寸,PPI 详细数据对比 iPhone 14 Plus、iPhone 14 Pro、iPhone 14 Pro Max
- Java浅拷贝和深拷贝
- 钉钉考勤与企业系统对接
- C语言读取wav文件
- 网页制作-第一周-任务1_1网页和网站的概念
- 【控制篇 / 应用】(6.0) ❀ 02. 只允许使用 QQ 和微信 (下) ❀ FortiGate 防火墙
- 陈平,温铁军视频思想笔记
- 光敏传感器实验报告_光敏传感器光电特性测量实验分析报告.ppt