R изменить порядок данных в теме - PullRequest
1 голос
/ 20 сентября 2010

У меня большой набор данных с повторной оценкой по всем предметам.Как перейти от:

subj, assessment, test1, test2  
A,    1,          10,    20  
A,    2,          12,    13  
A,    3,          11,    12  
B,    1,          14,    14  
B,    2,          13,    12

Кому:

subj, test1_1, test1_2, test1_3  
A,    10,      12,      11  
B,    14,      13  

Спасибо,

Джон

Ответы [ 2 ]

2 голосов
/ 20 сентября 2010

Функция изменения формы (в статистике) делает это довольно легко:

reshape(data, timevar='assessment', idvar='subj', dir='wide')

Или просто получить результаты для test1:

reshape(subset(data, select=-test2), timevar='assessment', idvar='subj', dir='wide')
2 голосов
/ 20 сентября 2010

Вы можете легко сделать это с помощью превосходного пакета reshape / reshape2 от hadley. вот код, который приведет вас к тому, что вам нужно

library(reshape); 
df = melt(df, id = c('subj', 'assessment'));
df = cast(df, subj ~ variable + assessment);

Дайте мне знать, если это работает для вас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...