Как поставить даты в верхнем столбце моего вывода в R - PullRequest
0 голосов
/ 13 октября 2018

У меня есть три столбца данных

Category Date Value
A 10/12/2018 1
A 10/14/2018 2
B 10/12/2018 3
B 10/13/2018 4
C 10/12/2018 5
C 10/14/2018 6

Как я могу преобразовать свой вывод так, чтобы вывод имел даты сверху, как это, и группировал категории?

   10/12/2018 10/13/2018 10/14/2018
A     1                      2
B     3           4
C     5                      6

IЯ пытался найти кросс-таблицу и некоторые базовые функции R и ценим ваши мысли по этому поводу.

Ответы [ 2 ]

0 голосов
/ 13 октября 2018

То, что вы хотите, называется «широким» форматом.Есть много пакетов и методов в R, которые делают этот вид или форматирование.Bing Sun, указывает на метод dplyr.Я предпочитаю метод data.table.

## loading your data here
library(readr)
x <- read_delim("Category Date Value
A 10/12/2018 1
A 10/14/2018 2
B 10/12/2018 3
B 10/13/2018 4
C 10/12/2018 5
C 10/14/2018 6", delim = " ")

## casting your data to wide format
library(data.table)
xcast <- dcast(x, Category~Date, value.var = "Value")
xcast

возвращает ...

  Category 10/12/2018 10/13/2018 10/14/2018
1 A         1         NA          2
2 B         3          4         NA
3 C         5         NA          6
0 голосов
/ 13 октября 2018

Это проблема изменения формы.

library(tidyr)

df %>% spread(Date,Value)

  Category 10/12/2018 10/13/2018 10/14/2018
1        A          1         NA          2
2        B          3          4         NA
3        C          5         NA          6
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...