从多于一列的 pandas 数据帧构建 networkx 有向图或流程图

2023-11-21

我有 pandas 数据框,由 10 列组成。

  • 每行包含用户在线执行的一个步骤。总共 10 列,因此所有 10 个步骤过程
  • 假设第一个活动是预订机票,那么步骤是 登录网站-->给出出发时间-->选择座位-->付款--审核

enter image description here

所以每一步都可能发生各种排列,我想从所有数据集中绘制一个有向图。

目前networkx仅支持2列

# libraries
import pandas as pd
import numpy as np
import networkx as nx
import matplotlib.pyplot as plt

# Build your graph
G=nx.from_pandas_dataframe(df, 'src', 'dest',create_using=nx.DiGraph())

# Plot it
nx.draw(G, with_labels=True)
plt.show()

有人可以告诉我如何处理两列以上的有向图吗


网络xfrom_pandas_dataframe uses add_edges_from,你可以做类似的事情:

# libraries
import pandas as pd
import numpy as np
import networkx as nx
import matplotlib.pyplot as plt

# Build your graph

df = pd.DataFrame(np.random.randn(2,4),columns=list('ABCD')) #Create a 4 column data frame

columns = list(df.columns.values)# Get columns name

g = nx.empty_graph(0, nx.DiGraph()) #initialize an empty graph

for i in range(len(columns)-1):
    g.add_edges_from(zip(df[columns[i]], df[columns[i+1]])) #Create edge between 2 values, between all consecutive coumns

# Plot it
nx.draw(g, with_labels=True)
plt.show()

With a result:

Resulting graph

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从多于一列的 pandas 数据帧构建 networkx 有向图或流程图 的相关文章

随机推荐

  • Postgres 视图的 Django 模型

    Edit 我的要求似乎有些混乱 该模型适用于Postgres 视图我在迁移 0009 中创建的 我的印象是 Django 不会为模型生成迁移 如果它具有managed False选项 然而 它仍在尝试创建它 另外 我使用 Django 1
  • JSP - 使用 Apache Commons 上传文件

    为什么我的文件上传代码不起作用 我正在使用 commons fileupload 1 1 1 jar 另外 我在 NetBeans 6 1 中的 isMultipartContent 第二行中看到了删除线 Check that we hav
  • 纬度和经度错误 - Google Maps API JS 3.0

    一段时间后 谷歌地图似乎将属性名称 Qa或Pa 更改为Na或其他名称 var map function initialize var myLatlng new google maps LatLng 25 363882 131 044922
  • 设置 Canvas.LineTo 的线端样式

    有没有办法为 TCanvas LineTo 方法设置 lineends 的样式 它似乎默认为圆角末端 当 Pen Width 设置为较大值 例如 9 时 对于不同颜色的行中的多条线来说 这看起来非常糟糕 它看起来像这样 圆角末端 其中 代表
  • postgresqlNewConnection(drv, ...) RS-DBI 驱动程序中出现错误:(无法在 dbname 上连接 postgres@local

    我是新来的R我正在尝试使用 RStudio 连接到 PostgreSQL 我已经安装了RPostgreSQL并尝试了以下代码 gt library DBI lib loc R win library 3 2 gt library RPost
  • 部署到已在 IntelliJ IDEA 外部运行的 Tomcat 服务器

    我已经在我的 PC 上安装了 Tomcat 服务器 并将其添加为service在Windows中 所以现在每次我启动计算机时它都会启动 现在 在 IntelliJ 中我已经配置了一个应用程序服务器 那就是我的 Tomcat 服务器 但是当尝
  • 如何减少 Visual Studio 2015 中 Xamarin Forms 应用程序的用户代码大小?

    我今天在 Windows 7 上安装了 Visual Studio 2015 RTM 并在 Xamarin 上注册了一个新帐户 入门许可证 创建项目后 我尝试运行该应用程序 之前创建的 AVD 我得到的只是这个错误 mandroid 错误
  • 在 werkzeug 请求中检索 url 锚点

    我有一个 DAV 协议 可以在 url 锚点中存储带外数据 例如这ghi in DELETE abc def ghi 服务器是 Flask 应用程序 我可以看到请求通过网络传入tcpdump 但是当我查看 werkzeug Request
  • 如何使用Spark的repartitionAndSortWithinPartitions?

    我正在尝试构建一个最小的工作示例repartitionAndSortWithinPartitions以便理解该函数 到目前为止我已经完成了 不起作用 不同的值会乱七八糟地乱七八糟 def partval partID Int iter It
  • Python:使用相对路径导入excel文件

    我尝试导入一个与脚本不在同一文件夹中的 Excel 文件 我需要获取上面的一个文件夹 然后进入另一个文件夹 B folder 并且有文件 2 file xlsx I tried df pd read excel r B folder 2 f
  • 如何在Java小程序中正确指定代码库和存档?

    我使用 Firefox 版本 gt 3 5 3 5 3 6 4 我尝试指定archive and codebase属性正确但不起作用 我的小程序主类位于archive运行时加载的一些必要的类位于codebase 如果我只指定archive然
  • SDL_GetTicks() 精度低于毫秒级

    我目前使用 SDL2 进行编程 一切正常 但我有一个问题SDL GetTicks 方法 通常它应该返回以毫秒为单位的总应用时间 但大多数时候它总是返回值 0 有时返回值 1 我用以下命令初始化了 SDLSDL INIT EVERYTHING
  • 使用 Eclipse CDT 构建多模块 C 项目(即解决方案)

    我将从 Netbeans 迁移到 Eclipse 在 Ubuntu 12 0 4 上 我有一个 C 应用程序 它由几个子项目组成 这些子项目是库 共享和静态 以及独立的可执行文件 我不知道如何创建 父 项目foo 其中包含组件项目 foob
  • 使用 Retrofit 转换 json 数组?

    这是我的 Json nata center id 67 nata center name Primo Institute of Design nata center id 68 nata center name Sai Ganesh Ins
  • php 中的 header 是如何工作的?

    浏览 php net 网站 它有一个标头示例 它说会给我错误 我复制了它 并在 WAMP 上执行 但它没有显示任何错误 但确实重定向到该站点 只是想知道 它在我的 WAMP 上是否是正确的行为 或者它是一个错误 或者我是否在 php ini
  • 检索项目的父级时出错:升级到 AppCompat v23 后找不到与给定名称匹配的资源

    我一直使用 Eclipse 编写 Android 程序 并决定开始迁移到安卓工作室 我决定使用与 Eclipse 相同的 SDK 然后 开始了一个新项目 设置最低 SDK 4 0 API 级别 14 选择空白活动选项 活动名称和布局名称使用
  • 如何使 DACPAC 只更新一种架构?

    我有一个带有 sqlproj 项目的 VS2013 解决方案 其中包含特定于该解决方案的对象 问题是这对于其他项目来说也是常见的数据库 我的问题是自动将模式中的更改部署到数据库而不影响其他对象 默认情况下 DACPAC 会更新整个数据库 这
  • 如何在 Flex/bison 中实现 If 语句

    我没有收到错误消息 请您帮帮我 这是 l 和 y 文件 谢谢 include ifanw tab h extern int yylval return EQ return NE lt return LT lt return LE gt re
  • React Native - 禁用“屏幕尺寸”设置

    我目前正在开发一个 React Native 应用程序 我们的一些用户可能有轻微的视力问题 我们希望阻止在 Android 中设置 显示大小 因为这会使我们的应用程序无法使用 我们使用简单的代码行解决了字体大小的问题 Text defaul
  • 从多于一列的 pandas 数据帧构建 networkx 有向图或流程图

    我有 pandas 数据框 由 10 列组成 每行包含用户在线执行的一个步骤 总共 10 列 因此所有 10 个步骤过程 假设第一个活动是预订机票 那么步骤是 登录网站 gt 给出出发时间 gt 选择座位 gt 付款 审核 所以每一步都可能