r - R:将每小时数据透视到列
问题描述
我对 r 很陌生,我正在尝试操纵公交时刻表数据。我想在附图之后显示时间。
我设法从 1. 到 2. 但我现在正在努力达到 3.
到目前为止,这是我的代码:
#1
timetable <- as.data.frame(c("11:34","11:46","12:12","13:16","14:45","15:54","16:22"))
colnames(timetable) <- 'time'
#2
library(stringr)
new.timetable <- str_split_fixed(timetable$time,":",2) %>% as.data.frame()
colnames(new.timetable) <- c('Hours', 'Minutes')
#3 ??
有没有办法将小时作为列并将分钟作为数据放在它下面?
非常感谢您的帮助。最好的,
解决方案
这是否符合您的目的?
#I have added one value to your timetable object
timetable <- as.data.frame(c("11:34","11:46","12:12","13:16","14:45","15:54","16:22", "11:47")) # added one value
library(tidyverse)
#3.
new.timetable %>%
group_by(Hours) %>%
mutate(id = row_number())%>%
ungroup() %>%
pivot_wider(id_cols=id, names_from = Hours, values_from = Minutes, values_fn = list) %>%
select(-id) %>%
unnest(1:6)
# A tibble: 3 x 6
`11` `12` `13` `14` `15` `16`
<chr> <chr> <chr> <chr> <chr> <chr>
1 34 12 16 45 54 22
2 46 NA NA NA NA NA
3 47 NA NA NA NA NA
推荐阅读
- ios - 为已经存在的视图控制器创建一个标签栏?
- validation - 如果输入包含所有数字、包含空格/s 和句点/s (.)
- c++ - 尝试使用 RapidXML 将唯一的 XML 属性附加到节点
- r - R - 从最旧的数据中减去最新的数据
- javascript - PHP没有将变量返回给ajax调用
- algolia - 有没有办法让 algolia 的独特设置忽略某个值?
- nginx - nginx 子域未重定向到所需端口
- .net - 控制台应用程序上的 .NET Core DI 记录器未登录到控制台
- ruby-on-rails - 保存 Ransack 搜索参数
- python - s3选择到熊猫数据框