Hi all. I have a community analysis data manipulation puzzle for you... hopefully someone can help. Please let me know if this question needs clarification, has previously been answered, or would be better sent to a different list.
Details follow. Thank you, Kate --- Here is a simplified version of my problem: I ran a community manipulation experiment with 7 reps of 2 treatments, for a total of 14 communities. Communities 1-7 are in Treatment 1 and 8-14 are in Treatment 2. I identified 5 taxa in the 14 communities and calculated a community dissimilarity matrix (14*14). Now I would like to decompose the distance matrix into a dataframe with the following column headings: community1s, community2s, withinORbetweenTRT, and distance. “Within or between treatment” indicates if the distance is between two communities within the same treatment or between the two treatments (values of 0 or 1). I did it by hand below to demonstrate, but my actual dataset has 100 communities so I need to figure out how to automate it... df<-data.frame(cbind(1:14, 18:5, 3:16, 14:1, 16:3)) #random values dist<-dist(df) distance<-as.vector(dist) community1s<-c(1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3, 4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,6,6,6,6,6,6,6,6,7,7,7,7,7,7,7, 8,8,8,8,8,8,9,9,9,9,9,10,10,10,10,11,11,11,12,12,13) community2s<-c(2,3,4,5,6,7,8,9,10,11,12,13,14,3,4,5,6,7,8,9,10,11,12,13,14, 4,5,6,7,8,9,10,11,12,13,14,5,6,7,8,9,10,11,12,13,14, 6,7,8,9,10,11,12,13,14,7,8,9,10,11,12,13,14, 8,9,10,11,12,13,14,9,10,11,12,13,14,10,11,12,13,14, 11,12,13,14,12,13,14,13,14,14) #now I need a column for whether or not the comparison is within treatment or #between treatments. I ordered the sites by treatment so sites 1-7 are in treatment1 #and 8-14 are in treatment2. 0 is within and 1 is between. withinORbetweenTRT<-c(0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0,0,1,1,1,1,1,1,1,0,0,0,0, 1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,0, 1,1,1,1,1,1,1,1,1,1,1,1,0,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0, 0,0) #now I can assemble the dataframe: final.df<-cbind(community1s, community2s, withinORbetweenTRT, distance) final.df I would appreciate any ideas! -- Kate Boersma, PhD Department of Biology University of San Diego 5998 Alcala Park San Diego CA 92110 kateboer...@gmail.com http://www.oregonstate.edu/~boersmak/ Kate S. Boersma, Ph.D. kateboer...@gmail.com http://people.oregonstate.edu/~boersmak/ Department of Biology University of San Diego 5998 Alcala Park San Diego, CA 92110 [[alternative HTML version deleted]] _______________________________________________ R-sig-ecology mailing list R-sig-ecology@r-project.org https://stat.ethz.ch/mailman/listinfo/r-sig-ecology