I\'m new to R / having the option to easily re-organize data, and have hunted around for a solution but can\'t find exactly what I\'d like to do. Reshape2\'s melt/cast doesn
A possibility:
x <- read.table(textConnection('
ID category_list xval yval
ID1 "cat1, cat2, cat3" xnum1 ynum1
ID2 "cat2, cat3" xnum2 ynum2
ID3 "cat1" xnum3 ynum3'),
header=TRUE,stringsAsFactors=FALSE)
library(plyr)
ddply(x,"ID",transform,category=strsplit(category_list,",")[[1]])
## ID category_list xval yval category
## 1 ID1 cat1, cat2, cat3 xnum1 ynum1 cat1
## 2 ID1 cat1, cat2, cat3 xnum1 ynum1 cat2
## 3 ID1 cat1, cat2, cat3 xnum1 ynum1 cat3
## 4 ID2 cat2, cat3 xnum2 ynum2 cat2
## 5 ID2 cat2, cat3 xnum2 ynum2 cat3