小编ale*_*lex的帖子

您可以使用 pivot_wider 创建多组交替的新列吗?

我的数据目前看起来像这样,列“Number_Code 基于每个不同的 Side_Effect:

Session_ID   Side_Effect     Number_Code
 1            anxious           1
 1            dizzy             2
 1            relaxed           3
 3            dizzy             2
 7            nauseous          4
 7            anxious           1
Run Code Online (Sandbox Code Playgroud)

我知道我可以做到:

mutate(rn = str_c('side_effect_', row_number())) %>% 
 pivot_wider(names_from = rn, values_from = Side_Effect)
Run Code Online (Sandbox Code Playgroud)

为了创建新的列名并将每个副作用放入一个新列中,如下所示:

 session    Number_Code   side_effect1   side effect_2      side_effect_3    
      1     1                 anxious         NA                 NA
      1     2                 NA              dizzy              NA
      1     3                 NA              NA                 relaxed
      3     2                 dizzy           NA                 NA
      7     4                 nauseous        NA                 NA
      7     1                 NA              anxious            NA
Run Code Online (Sandbox Code Playgroud)

但我需要根据“Side_Effect”和“Number_Code”扩大数据,并将它们放在这样的交替列中:

 session     side_effect1   number_code1   side effect_2   number_code2 …
Run Code Online (Sandbox Code Playgroud)

pivot r

7
推荐指数
2
解决办法
561
查看次数

多列代表一个值时的频率表 (R)

我有一个这样的数据集:

ID    color1   color2  color3   shape1       shape2        size
55    red     blue     NA       circle       triangle      small
67    yellow  NA       NA       triangle     NA            medium
83    blue    yellow   NA       circle       NA            large
78    red     yellow   blue     square       circle        large
43    green   NA       NA       square       circle        small
29    yellow  green    NA       circle       triangle      medium

Run Code Online (Sandbox Code Playgroud)

我想创建一个数据框,其中包含每个变量的频率和百分比,但我遇到了麻烦,因为在某些情况下同一变量有多个列。


Variable      Level        Freq        Percent 
 
color         blue          3           27.27
              red           2           18.18
              yellow        4           36.36
              green         2           18.18
              total         11          100.00

shape         circle        5           50.0       
              triangle      3           30.0
              square        2 …
Run Code Online (Sandbox Code Playgroud)

r

5
推荐指数
1
解决办法
3203
查看次数

在 R 中检测具有多个观测值的行

我有一个这样的数据集。我想识别“颜色”列中具有多个值的所有观察结果并将其替换为“多色”

ID  color1   color2
23   red      NA
44   blue     purple
51   yellow   NA
59   green    orange

Run Code Online (Sandbox Code Playgroud)

像这样:

ID  color   
23   red      
44   multicolor     
51   yellow     
59   multicolor   

Run Code Online (Sandbox Code Playgroud)

任何想法将不胜感激,谢谢!

r

3
推荐指数
1
解决办法
47
查看次数

在 R 中提取 2 个不同字符之间的值

如果我有这个:

2 (5.7%)
34 (8.9%)
Run Code Online (Sandbox Code Playgroud)

我怎样才能提取第一个 ( 和 % (只是百分比数字)之间的内容?

5.7
8.9

Run Code Online (Sandbox Code Playgroud)

r

3
推荐指数
1
解决办法
53
查看次数

标签 统计

r ×4

pivot ×1