我是Python新手,我试图看到两个不同信号之间的标准化互信息,不管我使用什么信号,我得到的结果总是1,我认为这是不可能的,因为信号是不同的,不是完全相关的。

我使用的是Normalized Mutual Information Function provided Scikit Learn:sklearn.metrics.normalized mutanalinfo评分(labels为true,labels为pred)。

下面是我使用的代码:from numpy.random import randn

from numpy import *

from matplotlib.pyplot import *

from sklearn.metrics.cluster import normalized_mutual_info_score as mi

import pandas as pd

def fzX(X):

''' z-scoring columns'''

if len(X.shape)>1:

'''X is matrix ... more vars'''

meanX=mean(X,0)

stdX=std(X,0)

stdX[stdX<1e-9]=0

zX=zeros(X.shape)

for i in range(X.shape[1]):

if stdX[i]>0:

zX[:,i]=(X[:,i]-meanX[i])/stdX[i]

else:

zX[:,i]=0

else:

'''X is vector ... more vars'''

meanX=mean(X)

stdX=std(X,0)

zX=(X-meanX)/stdX

return(zX,meanX,stdX)

def fMI(X):

'''vars in columns,

returns mut info of normalized data'''

zX,meanX,stdX=fzX(X)

n=X.shape[1]

Mut_Info=zeros((n,n))

for i in range(n):

for j in range(i,n):

Mut_Info[i,j]=mi(zX[:,i],zX[:,j])

Mut_Info[j,i]=Mut_Info[i,j]

plot(zX);show()

return(Mut_Info)

t=arange(0,100,0.1) # t=0:0.1:99.9

N=len(t) # number of samples in t

u=sin(2*pi*t)+(randn(N)*2)**2

y=(cos(2*pi*t-2))**2+randn(N)*2

X=zeros((len(u),2))

X[:,0]=u

X[:,1]=y

mut=fMI(X)

print mut

plot(X)

show()

你们以前有过类似的问题吗?你知道我做错了什么吗?

非常感谢您的奉献。

python数据标准化1002无标题,Scikit标准化互信息学习给我错误的值相关推荐

  1. mysql输入命令1002无标题_Linux下远程连接MySQL数据库的方法

    步骤 1.在服务器端开启远程访问 首先进入mysql数据库,然后输入下面两个命令: grant all privileges on *.* to 'root'@'%' identified by 'p ...

  2. 干货之如何利用Python程序赚钱【无标题】

    俗话说,思路决定出路,作为一个程序员,一定要敢想敢做.给阿基米德一个杠杆他可以撬动地球,给你一门开发语言,你能否撬动钱包? 一般来说作为程序员收入大概有以下几种方式: 1.最基本的肯定就是基本工资收入 ...

  3. 学python看什么书好1002无标题-如何使用pandas读取txt文件中指定的列(有无标题)

    最近在倒腾一个txt文件,因为文件太大,所以给切割成了好几个小的文件,只有第一个文件有标题,从第二个开始就没有标题了. 我的需求是取出指定的列的数据,踩了些坑给研究出来了. import pandas ...

  4. python定积分1002无标题_python 求定积分和不定积分

    求f(x) = sin(x)/x 的不定积分和负无穷到正无穷的定积分 sin(x)/x 的不定积分是信号函数sig ,负无穷到正无穷的定积分为pi import math import numpy a ...

  5. python not in range1002无标题_Python中偶尔遇到的细节疑问(一):去除列名特殊字符、标准差出现nan、切片索引可超出范围、range步长、众数...

    1. Pandas读取csv或excel数据时,很可能遇到的columns中,列名会带有特殊字符,例如:空格. ..双空格.引号等等,如果不想手动修改的话,可以df.rename()来解决. df = ...

  6. python not in range1002无标题_17个新手常见Python运行时错误

    学 Python 时,想要弄懂 Python 的错误信息的含义可能有点复杂.这里列出了常见的的一些让你程序 crash 的运行时错误. 1)忘记在 if , elif , else , for , w ...

  7. html是什么1002无标题,Jsf页面为普通/无标题的文本html

    我知道我可以使用servlet的这一点,但想知道是否可以使用豆/ JSF来代替. 是的,在JSF中也是很有可能的.整个页面的facelet可以是这样的: xmlns:f="http://ja ...

  8. sleep函数c语言1002无标题,C语言的sleep函数

    C语言的sleep函数 來源:互聯網  2010-01-21 08:25:31  評論 分類: 電腦/網絡 >> 程序設計 >> 其他編程語言 問題描述: 为何我在VS2005 ...

  9. python1002无标题_qq个性签名1002无标题

    营养美味,用心搭配,迩是莪一辈子旳宝贝.(QQ个性签名分类:幸福,秀恩爱艾特对象) 完全不能停止对吃的喜爱(QQ个性签名分类:心情) 我不是了解女生 我只是了解她(QQ个性签名分类:心情) 不爱热闹. ...

最新文章

  1. c程序设计语言中printf,编程序 用getchar函数读入两个字符c1和c2,然后分别用putchar和printf函数输出这两个字符。请问...
  2. 强化学习—— 蒙特卡洛树(Monte Carlo Tree Search, MCTS)
  3. 【luogu P1343 地震逃生】 题解
  4. 2017.9.23 循环格 思考记录
  5. 可以打开md_大祥MD型耐磨卧式多级离心泵现货出售中大泵业
  6. [论文阅读] (16)Powershell恶意代码检测论文总结及抽象语法树(AST)提取
  7. PASS云计算书简介——接近完美的模式
  8. 【OOP编程思想小感悟】
  9. 转载--游戏引擎开发之路
  10. 《解密家用路由器0day漏洞挖掘技术》学习笔记
  11. CSS实现折角效果:
  12. VSLAM算法(二):PnP求解 3D-2D 相机位姿及 BA优化算法
  13. Android persistent机制
  14. ubuntu18.04安装PCL点云库踩坑指南
  15. 勒索病毒基础介绍,值得收藏
  16. 随机名字获取,杜绝取名烦恼
  17. C语言程序设计(二)基础内容
  18. 2023电工杯数学建模AB题思路分析
  19. 导入式样式表CSS与链接式样式表CSS的区别
  20. 多元函数的极限与连续

热门文章

  1. Mule学习笔记(二)
  2. NetBean中的使用,比如快捷键
  3. 计算机在职英语,计算机在职研究生英语教学存在的不足
  4. Linux(Ubuntu,Cent OS)环境安装mkfontscale mkfontdir命令以及中文字库
  5. 经典卷积网络进阶--GoolgleNet详解
  6. VMware新装CentOS无法连接外网解决方法
  7. LINQ之路系列博客后记
  8. 《中国人工智能学会通讯》——11.65 双重代价敏感的属性分类模型
  9. 用Python实现每秒处理120万次HTTP请求
  10. 10K入职linux运维岗位小伙伴感谢信及面试经历分享