rm(list=ls())
setwd("C:/Users/哒哒/Desktop/社交网络")
library(igraph)
library(reshape2)
data1=read.csv('influence_data.csv',header=T)
data2=as.matrix(data1[,c(2,6)]) data2是一个长表,两列都是音乐流派,一列是施加影响的,一列是被影响的,建立社交网络图
init.igraph<-function(data,dir=T,rem.multi=T){
labels<-union(unique(data[,1]),unique(data[,2]))
ids<-1:length(labels);names(ids)<-labels
from<-as.character(data[,1]);to<-as.character(data[,2])
edges<-matrix(c(ids[from],ids[to]),nc=2)
g<-graph.empty(directed = dir)
g<-add.vertices(g,length(labels))
V(g)$label=labels
g<-add.edges(g,t(edges))
if (rem.multi){
E(g)$weight<-count.multiple(g)
g<-simplify(g,remove.multiple = TRUE,
remove.loops = TRUE,edge.attr.comb = "mean")
}
g
}
g1=init.igraph(data4)
badvs = V(g1)[degree(g1) == 0]
g1 = delete.vertices(g1, badvs)
order(degree(g1),decreasing = ![T)[1:15]]
此处是上面一条代码运行的结果(筛选degree排名前十五的音乐流派)结果的每个数字代表一个音乐流派,我想得知每个数字代表的对应流派是哪个:[1] 1 10 4 13 7 5 9 11 17 8 2 16 15 12 6