r - 如何改变二分图中第一类和第二类顶点的类型?
问题描述
我想通过共同参与电影制作来建立一个国家网络,但是使用我的代码,我得到了相反的结果(国家电影)。
我读到“二分图在 igraph 中有一个 'type' 顶点属性,对于第一种顶点,这是布尔值和 FALSE,对于第二种顶点是 TRUE。” 所以,我认为我应该改变顶点的类型,但不知道如何。
不幸的是,数据处于封闭访问状态,因此无法下载,但最终矩阵 (a) 的列是国家/地区,行是电影 ID。我也尝试翻转df,但没有帮助(图中的顶点是我想要的国家,但它们之间没有联系)。
#I load df and make some changes with it
movies <- read_csv("~/shared/mi_2018/data/movies.csv") %>%
select(movie_id, production_countries)
movies_with_countries = extract_json2(df = movies, col = "production_countries")
a = spread(movies_with_countries, key = production_countries_sep,
value = production_countries_v)
row.names(a) <- a$movie_id
a = a %>% select(-movie_id, -production_countries)
a[is.na(a)] <- 0
#Here I make a bipartite graph, but the result is reverse compared to what I expected
bg = graph.incidence(a)
V(bg)$type
pr = bipartite.projection(bg)
q = get.adjacency(pr$proj1,sparse=FALSE,attr="weight")
plot(pr$proj1,edge.width=E(pr$proj1)$weight^2,edge.color="black",vertex.label=V(pr$proj1)$name)
我希望该图能够通过共同参与电影制作来代表国家之间的联系,但在实际图表中是关于基于国家/地区连接的 fils。
解决方案
推荐阅读
- sql - 如何在 SQL Server 中根据进程类型对数据进行分组?
- angular - 在 Angular5/6 中的 onload 方法之外访问文件阅读器内容?
- android - 以编程方式管理来自 apk 的更新
- javascript - Angular遍历嵌套表单以获取值
- javascript - 我需要解释 JS 如何处理排序?
- java - 我无法将此字符串转换为日期
- php - PHP-FFMpeg:如何正确连接两个视频?
- azure - 是否可以通过 PowerShell 获得 Azure 订阅优惠或 offerId?
- vba - VBA-命令按钮将文本框值保存到不同的工作簿中
- r - 如何创建一个在其名称中包含字符之间空格的 R 对象