A few years back I used UCINET for some social network analysis. Theese days I'd like to use SNA again - but this time I prefer a unified analysis framework - which for me is R.
I have looked at the sna and statnet documentation but am a bit overwhelmed.
What I'd like to do: First: Load an bipartite/incidence matrix pulled directly from e.g. a websurvey (often valued). Convert this matrix to two adjacency matrix' (affiliatoin by affiliation and cases by cases). It could also be a directed, valued cases by cases matrix.
Second: Load a file (also from e.g. websurvey data) of vertice attributes.
Third: Then plot the graph with e.g. vertice size according to some centrality measure, colored and labeled by some vertice attributes, with only edges with value over a certain threshold being drawn.
This is a mini incidence matrix:
data <- structure(list(this = c(0, 1, 0, 1, 1, 2, 0, 1, 3),
that = c(1, 1, 3, 0, 0, 0, 2, 1, 0),
phat = c(0, 0, 2, 1, 0, 0, 1, 2, 0)),
.Names = c("this", "that", "phat"),
row.names = c("a", "b", "c", "d", "e", "f", "g", "h", "i"),
class = "data.frame")
with som attribute data:
att <-structure(list(sex = structure(c(1L, 1L, 2L, 2L, 1L, 2L, 1L,
1L, 1L), .Label = c("F", "M"), class = "factor"), agegr = c(1L,
1L, 3L, 1L, 3L, 1L, 1L, 3L, 1L), place = structure(c(1L, 2L,
1L, 1L, 1L, 1L, 2L, 2L, 1L), .Label = c("Lower", "Upper"),
class = "factor")), .Names = c("sex",
"agegr", "place"), row.names = c(NA, -9L), class = "data.frame")
p.s. maybe SNA would be a good tag for this post? I just don't have the nescassary SO goodwill :-)