Приветствую коллег, я борюсь с основной проблемой c, но не могу решить мою проблему. У меня есть набор данных, который структурирован как:
Reference | Person | DOB |Status | Address
------------------------------------------------------
0001/xy | 001 |19/01/1960 | Respondent |123 Fake Street
0001/xy | 002 |01/06/1978 | Defendant |555 High Ave.
0002/xy | 001 |31/04/1988 | Respondent |432 Random Dr.
0002/xy | 002 |14/07/1991 | Defendant |666 Missing Close
0002/xy | 003 |10/10/2010 | Defendant |987 McFakerton Blvd.
0003/xy | 001 |08/02/1995 | Respondent |911 Crime Street
Reference
- это уникальный ключ для «инцидента». Мне нужен только один ряд данных широкого набора, в котором столбец должен поворачиваться равен Status
, а новые столбцы содержат префикс из значений столбца. Таким образом, это должно выглядеть так:
Reference | Person | Respondent1_DOB | Respondent1_Address |Defendent1_DOB | Defendent1_Address |Defendent2_DOB | Defendent2_Address
-------------------------------------------------------------------------------------------------------------------------------------
0001/xy | 001 |19/01/1960 |123 Fake Street |01/06/1978 |555 High Ave | |
0002/xy | 001 |31/04/1988 |432 Random Dr. |14/07/1991 |666 Missing Close |10/10/2010 |987 McFakerton Blvd
0003/xy | 001 |08/02/1995 |911 Crime Street | | | |
Как видите, это простая задача, но все функции преобразования, которые я пробовал, включая tidyr
и Reshape2
, продолжают пытаться суммировать данные, которые удаляются. номинальные характеристики, в дополнение к тому, чтобы не дублировать заголовки столбцов для предоставленных значений, или полностью потерпеть неудачу.
Мой пробный и неудачный код включен:
Trans<-transform(reshape(Original, direction='wide',
varying=list(3,5))[-1], id=Status)
Trans<- dcast(Original, Reference ~ Status,
value.var = c("DOB","Address"))
Trans<- Original %>% pivot_wide(Reference ~ Status,names_preifx=Status )
Есть ли простой способ сделать это в R? Я мог бы сделать это в Python, но я стараюсь придерживаться одного языка и IDE, поскольку именно это сейчас имеет организация.