最近在做特征选择,要考量几个特征的相关性,想找这个方法的描述,发现很难在网页上搜到。以下为整合的:

[11] 王黎明, 吴香华, 赵天良,等. 基于距离相关系数和支持向量机回归的PM_(2.5)浓度滚动统计预报方案[J]. 环境科学学报, 2017,37(4):1268-1276.(我是从这篇论文上找的,维基百科上有更细致的,可惜我看不下去啊)

下为python程序:

原文:https://gist.github.com/satra/aa3d19a12b74e9ab7941

from scipy.spatial.distance import pdist, squareform
import numpy as np

from numbapro import jit, float32

def distcorr(X, Y):
    """ Compute the distance correlation function

    >>> a = [1,2,3,4,5]
    >>> b = np.array([1,2,9,4,4])
    >>> distcorr(a, b)
    0.762676242417
    """
    X = np.atleast_1d(X)
    Y = np.atleast_1d(Y)
    if np.prod(X.shape) == len(X):
        X = X[:, None]
    if np.prod(Y.shape) == len(Y):
        Y = Y[:, None]
    X = np.atleast_2d(X)
    Y = np.atleast_2d(Y)
    n = X.shape[0]
    if Y.shape[0] != X.shape[0]:
        raise ValueError('Number of samples must match')
    a = squareform(pdist(X))
    b = squareform(pdist(Y))
    A = a - a.mean(axis=0)[None, :] - a.mean(axis=1)[:, None] + a.mean()
    B = b - b.mean(axis=0)[None, :] - b.mean(axis=1)[:, None] + b.mean()

    dcov2_xy = (A * B).sum()/float(n * n)
    dcov2_xx = (A * A).sum()/float(n * n)
    dcov2_yy = (B * B).sum()/float(n * n)
    dcor = np.sqrt(dcov2_xy)/np.sqrt(np.sqrt(dcov2_xx) * np.sqrt(dcov2_yy))
    return dcor

Distance correlation(距离相关系数)相关推荐

  1. 特征筛选5——距离相关系数筛选特征(单变量筛选)

    距离相关系数用来判断两个变量是否独立,值域为[0,2] 值接近0,两个变量正相关 值接近1,两个变量无关 值接近2,两个变量负相关 距离相关系数可以参考:https://docs.scipy.org/ ...

  2. Open3D Distance Queries 距离查询

    Distance Queries 距离查询 Open3D 中的类RaycastingScene提供了一组距离查询,可用于将三角形网格转换为隐式函数.查询到表面的距离或确定点是否位于网格内. 在本教程中 ...

  3. Distance computations - Cosine distance - 余弦距离

    Distance computations - Cosine distance - 余弦距离 Distance computations (scipy.spatial.distance) https: ...

  4. Earth Mover's Distance (EMD)距离

    原文: http://d.hatena.ne.jp/aidiary/20120804/1344058475 作者: sylvan5 翻译: Myautsai和他的朋友们(Google Translat ...

  5. UE4-LOD理解-Distance culling(距离剔除体积)和Visibility culling(可视化剔除体积)

    Distance culling 和 Visibility culling 本篇只是知识点备注 Distance culling Visibility culling 本篇只是知识点备注 Distan ...

  6. 机器学习—聚类(一)(L—P范数/闽可夫斯基距离/马氏距离/相关系数/夹角余弦)

    机器学习中用样本之间的距离/相似度来表示样本差异,下面介绍几种常用的距离/相似度,顺便介绍一下L-P范数. 1.闽可夫斯基距离 L-P范数与闽可夫斯基距离的定义一样: Lp=(∑1nxip)1p,x= ...

  7. normalized correlation 归一化相关系数

    这个系数和欧式距离.皮尔逊相关系数等类似,度量了统计学中两个随机变量(随机变量)的相关距离. 1 定义 我们来看一下它的定义式: 2 应用 2.1 衡量图片相关度 NCC是一种基于统计学计算两组样本数 ...

  8. 数据维度爆炸怎么办?详解5大常用的特征选择方法

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:Edwin Jarvis,cnblog博客整理 在许多机器学习相关 ...

  9. 数据维度爆炸怎么办?详解 5 大常用的特征选择方法

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 在许多机器学习相关的书里,很难找到关于特征选择的内容,因为特征选择 ...

最新文章

  1. 一致性协议算法-2PC、3PC、Paxos、Raft、ZAB、NWR超详细解析
  2. Docker - 安装
  3. 创业者必看:创业得出的10条血泪经验
  4. Java中级工程师知识图谱
  5. POJ - 3422 Kaka's Matrix Travels(网络流-最大费用最大流+拆点法)
  6. Django(part16)--URL反向解析
  7. 前端学习(3275):js中this的使用四
  8. Docker一些常用命令
  9. 买iPhone 11的要不再等等?iPhone 12首曝:全系5G,回归经典造型
  10. 基于python的气象数据分析_基于python的《Hadoop权威指南》一书中气象数据下载和map reduce化数据处理及其......
  11. 清华计算机学院教师名单,清华大学计算机科学与技术系导师教师师资介绍简介-艾海舟...
  12. IT职业技能图谱:IT工程师学习路线
  13. BZOJ4049 [Cerc2014] Mountainous landscape
  14. IP地址0.0.0.0是什么意思?
  15. 学计算机心得体会50字,阅读心得体会50字
  16. VS2015编译时“ The POSIX name for this item is deprecated.”的分析
  17. java pdf工具类_Java PDF工具类(一)| 使用 itextpdf 根据PDF模板生成PDF(文字和图片)...
  18. 【MTK】 关于电信使用VoLTE异常
  19. tcp ip通讯 linux xpe,xpe安装在PCA-6006VE( #234
  20. android gps定位太慢,小米手机gps定位慢怎么解决?小米4解决GPS搜星慢的方法

热门文章

  1. ES6之变量的解构赋值
  2. 【Go语言编程】基础知识篇
  3. JAVA毕设项目实验室耗材管理系统(java+VUE+Mybatis+Maven+Mysql)
  4. SQLTracker跟踪工具用法
  5. ubuntu提示“播放此文件需要MPEG-4-AAC解码器,H264解码器“
  6. 这半年没批版号了,那些手游是怎么通过广电审核这一关并成功上架的?
  7. JavaScript-ECMAScript编程
  8. Unable to start web server; nested exception is org.springframework.context.ApplicationContextExcept
  9. JavaScript简单实现论坛发帖(留言)
  10. PlaintextAttack