On 12/04/2011 08:21 PM, set wrote:

> Hello R-users,

>

> I've got a file with individuals as colums and the clusters where they occur

> in as rows. And I wanted a table which tells me how many times each

> individual occurs with another. I don't really know how such a table is

> called...it is not a frequency table....My eventual goal is to make

> Venn-diagrams from the occurence of my individuals.

>

> So I've this:

>

> cluster ind1 ind2 ind3 etc.

> 1 0 1 2

> 2 3 0 1

> 3 1 1 1

>

> And I want to go to this:

> ind1 ind2 ind3

> ind1 0 4 2

> ind2 4 0 4

> ind3 2 4 1

>

> is there a way to do this?

Hi set,

Your example is a bit hard to figure out. In particular, individual 1

seems to be in cluster 2 three times, and individual 3 in cluster 1

twice. I could understand it if the top table looked like this:

cluster ind1 ind2 ind3 ...

1 0 1 1 ...

2 1 0 1 ...

3 1 1 1 ...

That tells me that individual 1 is in cluster 2 and 3 but not in cluster

1, and so on. If you look at the first example in the intersectDiagram

function in the plotrix package, you will see something similar, except

that individuals are rows and common attributes (belonging to sets) are

columns. You can get an intersection diagram from that showing how many

individuals are in each combination of sets. This is similar to a Venn

diagram, except that the population of each intersection is represented

by the width of a rectangle and a text representation of that population.

Thinking about it, maybe you are trying to represent both types of

individuals (that is, there exists more than one of individual type 1

and so on) and attributes (belonging to clusters). In this case you are

trying to get the intersections of two independent groups of sets.

So, I created a dataset in which individuals can have personal

characteristics (sex, age) and scholastic characteristics (which

subjects they study).

funnystuff<-data.frame(math=sample(c(0,1),100,TRUE),

biology=sample(c(0,1),100,TRUE),

english=sample(c(0,1),100,TRUE),

sex=sample(c(0,1),100,TRUE),

over18=sample(c(0,1),100,TRUE))

library(plotrix)

intersectDiagram(funnystuff,main="Studies by sex and age",sep="\n")

This gives me an interesting diagram from which I can get various

intersections of these two groups of attributes. Is this what you are

seeking?

Jim

______________________________________________

[hidden email] mailing list

https://stat.ethz.ch/mailman/listinfo/r-helpPLEASE do read the posting guide

http://www.R-project.org/posting-guide.htmland provide commented, minimal, self-contained, reproducible code.