История образовательной Галактики

Материал из Letopisi.Ru — «Время вернуться домой»
(Различия между версиями)
Перейти к: навигация, поиск
(Новая страница: « История Галактики средствами R rm(list=ls()) ubi <- read.csv(file.choose(),sep=";", as.is=T, header=F, encoding ="UTF-8") ubi2 …»)
 
Строка 1: Строка 1:
 +
Как мы превращаем историю деятельности в структуру отношений? Здесь приведен пример истории образов
  
  
История Галактики средствами R
+
== История Галактики средствами [[R]] ==
  
 +
Понадобится пакет igraph
  
 
+
  rm(list=ls()) # очистим всё
  rm(list=ls())
+
  ubi <- read.csv(file.choose(),sep=";", as.is=T, header=F, encoding ="UTF-8") # header=TRUE - если есть заголовки столбцов
  ubi <- read.csv(file.choose(),sep=";", as.is=T, header=F, encoding ="UTF-8")  
+
  ubi2 <- data.frame(User = paste("U",ubi[,1],sep=":" ) , Page = paste("P",ubi[,2],sep=":") )  # Это мы на всякий случай обозначили участников и страницы
  ubi2 <- data.frame(User = paste("U",ubi[,1],sep=":" ) , Page = paste("P",ubi[,2],sep=":") )  #  
+
  ubi2.network <- graph.data.frame(ubi2,directed=T) # у нас было 2 столбца - и мы из этих данных построили сеть - в принципе мы могли их всех
  ubi2.network <- graph.data.frame(ubi2,directed=T)
+
  ubi2.network <- simplify(ubi2.network) # упрощение
  ubi2.network <- simplify(ubi2.network)
+
 
  V(ubi2.network)$color <-ifelse (substring(V(ubi2.network)$name, 1, 1) == "U",'red','blue')
 
  V(ubi2.network)$color <-ifelse (substring(V(ubi2.network)$name, 1, 1) == "U",'red','blue')
 
  V(ubi2.network)$shape <-ifelse (substring(V(ubi2.network)$name, 1, 1) == "U",'circle','square')
 
  V(ubi2.network)$shape <-ifelse (substring(V(ubi2.network)$name, 1, 1) == "U",'circle','square')
Строка 15: Строка 16:
 
  par(mai=c(0,0,1,0))
 
  par(mai=c(0,0,1,0))
 
  plot(ubi2.network, edge.arrow.size=.4,vertex.label=NA, vertex.size=2, layout=layout.kamada.kawai)
 
  plot(ubi2.network, edge.arrow.size=.4,vertex.label=NA, vertex.size=2, layout=layout.kamada.kawai)
 
+
А теперь уберем
+
bad.vs<-V(ubi2.network)[degree(ubi2.network)<3] #identify those vertices part of less than three edges
 
+
  ubi2.network<-delete.vertices(ubi2.network, bad.vs) #exclude them from the graph - убрать узлы с
bad.vs<-V(bsk.network)[degree(bsk.network)<3] #identify those vertices part of less than three edges  
+
 
+
ubi2.network<-delete.vertices(ubi2.network, bad.vs) #exclude them from the graph
+
  
 
[[Категория:Учебная аналитика]]
 
[[Категория:Учебная аналитика]]
 
[[Категория:R]]
 
[[Категория:R]]

Версия 16:17, 31 января 2016

Как мы превращаем историю деятельности в структуру отношений? Здесь приведен пример истории образов


История Галактики средствами R

Понадобится пакет igraph

rm(list=ls()) # очистим всё
ubi <- read.csv(file.choose(),sep=";", as.is=T, header=F, encoding ="UTF-8") # header=TRUE - если есть заголовки столбцов
ubi2 <- data.frame(User = paste("U",ubi[,1],sep=":" ) , Page = paste("P",ubi[,2],sep=":") )  # Это мы на всякий случай обозначили участников и страницы
ubi2.network <- graph.data.frame(ubi2,directed=T) # у нас было 2 столбца - и мы из этих данных построили сеть - в принципе мы могли их всех
ubi2.network <- simplify(ubi2.network) # упрощение 
V(ubi2.network)$color <-ifelse (substring(V(ubi2.network)$name, 1, 1) == "U",'red','blue')
V(ubi2.network)$shape <-ifelse (substring(V(ubi2.network)$name, 1, 1) == "U",'circle','square')
set.seed(42)
par(mai=c(0,0,1,0)) 		
plot(ubi2.network, edge.arrow.size=.4,vertex.label=NA, vertex.size=2, layout=layout.kamada.kawai)

bad.vs<-V(ubi2.network)[degree(ubi2.network)<3] #identify those vertices part of less than three edges  
 ubi2.network<-delete.vertices(ubi2.network, bad.vs) #exclude them from the graph - убрать узлы с
Персональные инструменты
Инструменты