你能在特定的组中获取值,并将它们分别放在R中的一个新列中吗?
我想为一列的每个值创建多个新列,并按另一列分组。 例如,如果我有:你能在特定的组中获取值,并将它们分别放在R中的一个新列中吗?,r,data-manipulation,R,Data Manipulation,我想为一列的每个值创建多个新列,并按另一列分组。 例如,如果我有: session side_effect: 1 dizzy 1 irritable 1 anxious 3 focused 3 anxious 7 relaxed 我能得到这个吗: session
session side_effect:
1 dizzy
1 irritable
1 anxious
3 focused
3 anxious
7 relaxed
我能得到这个吗:
session side_effect1 side effect_2 side_effect_3
1 dizzy irritable anxious
3 focused anxious
7 relaxed
我们可以使用
pivot\u wide
fromtidyr
将“长”格式转换为“宽”格式
library(dplyr)
library(tidyr)
df1 %>%
group_by(session) %>%
mutate(rn = str_c('side_effect_', row_number())) %>%
pivot_wider(names_from = rn, values_from = side_effect)
# A tibble: 3 x 4
# session side_effect_1 side_effect_2 side_effect_3
# <int> <chr> <chr> <chr>
#1 1 dizzy irritable anxious
#2 3 focused anxious <NA>
#3 7 relaxed <NA> <NA>
库(dplyr)
图书馆(tidyr)
df1%>%
分组人(会话)%>%
突变(rn=str_c('副作用',行数())%>%
枢轴宽度(名称从=rn,值从=副作用)
#一个tibble:3x4
#会话副作用1副作用2副作用3
#
#1头晕易怒焦虑
#2.3专注焦虑
#37放松
数据
df1我们可以使用pivot\u wide
fromtidyr
将“长”格式转换为“宽”格式
library(dplyr)
library(tidyr)
df1 %>%
group_by(session) %>%
mutate(rn = str_c('side_effect_', row_number())) %>%
pivot_wider(names_from = rn, values_from = side_effect)
# A tibble: 3 x 4
# session side_effect_1 side_effect_2 side_effect_3
# <int> <chr> <chr> <chr>
#1 1 dizzy irritable anxious
#2 3 focused anxious <NA>
#3 7 relaxed <NA> <NA>
库(dplyr)
图书馆(tidyr)
df1%>%
分组人(会话)%>%
突变(rn=str_c('副作用',行数())%>%
枢轴宽度(名称从=rn,值从=副作用)
#一个tibble:3x4
#会话副作用1副作用2副作用3
#
#1头晕易怒焦虑
#2.3专注焦虑
#37放松
数据
df1工作正常非常感谢!!非常好,非常感谢!!