CSGraph代表 压缩稀疏图 ,它着重于基于稀疏矩阵表示的快速图算法。

图表表示

首先,让我们了解一个稀疏图是什么以及它在图表示中的作用。

什么是稀疏图?

图形只是节点的集合,它们之间有链接。图表几乎可以代表任何事物 - 社交网络连接,每个节点都是一个人,并且与熟人相连;

图像,其中每个节点是像素并连接到相邻像素; 指向高维分布,其中每个节点都连接到最近的邻居,并且几乎可以想象其他任何事物。

表示图形数据的一种非常有效的方式是在一个稀疏矩阵中:让我们称之为G.矩阵G的大小为N×N,并且G

[i,j]给出节点'i'和节点之间的连接的值'J'。稀疏图形包含大部分零 - 也就是说,大多数节点只有几个连接。在大多数感兴趣的情况下,该属性都是事实。

在scikit-learn中使用的几种算法激发了稀疏图子模块的创建,其中包括以下内容 -

Isomap - 流形学习算法,需要在图中找到最短路径。

分层聚类 - 基于最小生成树的聚类算法。

谱分解 - 基于稀疏图拉普拉斯算子的投影算法。

作为一个具体的例子,假设我们想要表示以下无向图 -

该图有三个节点,其中节点0和1通过权重2的边连接,节点0和2通过权重1的边连接。我们可以构造如下例所示的稠密,蒙板和稀疏表示请记住,无向图由对称矩阵表示。

G_dense = np.array([ [0, 2, 1],

[2, 0, 0],

[1, 0, 0] ])

G_masked = np.ma.masked_values(G_dense, 0)

from scipy.sparse import csr_matrix

G_sparse = csr_matrix(G_dense)

print G_sparse.data

上述程序将生成以下输出。

array([2, 1, 2, 1])

这与前面的图相同,只是节点0和2通过零权重的边连接。在这种情况下,上面的密集表示会导致含糊不清 -

如果零是一个有意义的值,那么如何表示非边缘。在这种情况下,必须使用蒙版或稀疏表示来消除歧义。

让我们考虑下面的例子。

from scipy.sparse.csgraph import csgraph_from_dense

G2_data = np.array

([

[np.inf, 2, 0 ],

[2, np.inf, np.inf],

[0, np.inf, np.inf]

])

G2_sparse = csgraph_from_dense(G2_data, null_value=np.inf)

print G2_sparse.data

上述程序将生成以下输出。

array([ 2., 0., 2., 0.])

python 图形_Python图形数据相关推荐

  1. python独立图形_Python图形界面(自学Python系列笔记-4)(不定期更新)

    lGUI Graphical User Interfaces ltkinter模块 n是Python系统配置的标准GUI库 n采用tkinter模块编写的界面可以在所有主流操作系统上运行 l从应用的角 ...

  2. 奥运五环python代码_python图形绘制奥运五环实例讲解

    1. 适当的空格 逻辑行首的空白表示逻辑表示层次关系 从而决定分组 语句从新行的第一列开始 风格统一 都用四个空格 不能随便加空格 奥运五环 #绘制奥运五环 import turtle turtle. ...

  3. python 热力图_python高维数据型图表热力图、树形图

    热力图 热力图(heat map) 一种将规则化矩阵数据转换成颜色色调的常用的可视化方法: 每个单元对应数据的某些属性: 属性的值通过颜色映射转换为不同色调并填充规则单元: 表格坐标的排列和顺序都可以 ...

  4. python重复_python常用数据重复项处理方法

    在数据的处理过程中,一般都需要进行数据清洗工作,如数据集是否存在重复,是否存在缺失,数据是否具有完整性和一致性,数据中是否存在异常值等.发现诸如此类的问题都需要针对性地处理,下面我们一起学习常用的数据 ...

  5. python用for循环画多个图形_Python matplotlib读取excel数据并用for循环画多个子图subplot操作...

    Python matplotlib读取excel数据并用for循环画多个子图subplot操作,英语,总分,平均,数据,语文 Python matplotlib读取excel数据并用for循环画多个子 ...

  6. 如何用python画数据图-关于如何使用Python绘制基本数据图形模型

    关于如何使用Python绘制基本数据图形模型 通过之前的数据分析软件的学习,了解了数据清洗.处理后最好是输出图形,以方便后期的数据分析报告的输出.之前学习的方法是通过是SPSS软件然后进行数据整理归类 ...

  7. 最近很火的数据动图python_GitHub热榜第一,标星近万:这个用Python做交互式图形的项目火了...

    乾明 发自 凹非寺 量子位 报道 | 公众号 QbitAI GitHub上,一份用Python做交互式图形的资源火了. 这一工具名为Bokeh,官方介绍称,它能读取大型数据集或者流数据,以简单快速的方 ...

  8. python隐藏画笔箭头的函数是hide_Python开发的串行通信上位机程序三部曲第三部分,串口,通讯,用,图形,方式,显示,数据...

    用Visual Basic或者C#, LabVIEW等软件开发的上位机界面,和文本式交互界面比较而言,就是可以用图形方式来显示数据.那么python可不可以用图形来显示数据呢?Of course! 和 ...

  9. 关于Python绘制柱状图等图形,以及数据拆分与合并详细讲解

    本文主要讲解这四个大方面问题: 一.使用plot()方法绘制柱状图等其它图形 二.查看DataFrame的内存占用情况 三.concat()函数与append()方法 四.merge()方法与join ...

最新文章

  1. ubuntu 鼠标变成黑色的叉并且图标消失
  2. exists的用法 python_10 个 Python 开发技巧
  3. 老男孩的运维笔记文档-高级部分(系统架构师)列表(三)
  4. java 舍,java 4舍六入五成双
  5. wpf项目无法使用针式打印机_针式打印机的常见故障和解决方法2
  6. 从服务端接收数组_Kafka系列第6篇:消息是如何在服务端存储与读取的,你真的知道吗?...
  7. 基于VS + Qt编程的UG/NX二次开发
  8. 基于stm32f401的双按键可视化多模式选择模块
  9. 使用git restore命令撤销你在工作区的修改
  10. 固定资产管理系统 概要说明书说明书
  11. 崩坏星穹铁道PC、安卓、iOS三端配置要求
  12. JavaScript - jQuery(一)
  13. VSTO中Word的查找方式
  14. STM32模拟读卡器,对于工控机方案谨防踩坑
  15. Android KeyCode列表 input keyevent XXX
  16. 企业AD域(域控服务器)的安装和配置详细教程
  17. matlab 矩阵 列 逆序,matlab对矩阵/向量的常用操作(拼接矩阵、向量逆序、改变矩阵形状、求行阶梯形矩阵、提取矩阵的一部分等)...
  18. 基于vue编写的2048小游戏
  19. PCIe(peripheral component interconnect express)
  20. 使用显着性检测对可见光和红外图像进行双尺度图像融合笔记

热门文章

  1. java 结构体数组初始化_C数组结构体联合体快速初始化
  2. android layout.inflater,Android - LayoutInflater
  3. 在linux下vcd光盘提取,linux下抓取Vcd的视频文件[Linux安全]
  4. 鸿蒙系统会不会影响游戏,令人担心,鸿蒙系统会不会让人失望?未来难说
  5. python递归 数字全排列_利用递归实现全排列(python)
  6. html文件内容搜索,html读出文本文件内容
  7. php 安全mysql,关于php:我从mysql注入安全吗?
  8. 超过响应缓冲区限制_Nginx如何限制并发连接数和连接请求数?
  9. JQ 全选后获取选中的值_Filecoin如何创建账户钱包并获取FIL测试币
  10. HDU 3530Subsequence(单调队列)