获取列名称作为关于行的问题的结果

时间:2018-10-07 15:01:17

标签: r

我有一个名为test的数据集

test

我需要为以下内容编写代码 q1。吉姆做得最多的是,ANS将进行10次跑步 q2迈克要做的至少三件事是:安斯威尔走6跑4驱动4 q3谁走得最远,答案将是吉姆40

1 个答案:

答案 0 :(得分:0)

这将使您了解如何将其整理成整齐的格式,并开始回答问题。

library(tidyverse)

df <- data.frame(stringsAsFactors=FALSE,
name = c("paul", "john", "mike", "jim"),
walks = c(10L, 9L, 6L, 7L),
runs = c(6L, 5L, 4L, 10L),
cycles = c(2L, 5L, 8L, 9L),
drives = c(2L, 3L, 4L, 5L),
flys = c(2L, 6L, 8L, 9L)
)
df

df <- df %>% gather(key = transport, value = "freq", walks:flys)
df

df %>% filter(name == "jim") %>%
  group_by(transport) %>% 
  arrange(desc(freq))

为您提供如下输出表:

# A tibble: 5 x 3
# Groups:   transport [5]
  name  transport  freq
  <chr> <chr>     <int>
1 jim   runs         10
2 jim   cycles        9
3 jim   flys          9
4 jim   walks         7
5 jim   drives        5

可以让您回答第一季度。

请注意,gather()用于整理数据,例如:

   name transport freq
1  paul     walks   10
2  john     walks    9
3  mike     walks    6
4   jim     walks    7
5  paul      runs    6

这看起来像是您的家庭作业,因此最好自己解决其余问题,但这将使您走上正确的轨道。

在dplyr中查找所需的功能。