小编ant*_*ant的帖子

用户使用dplyr折叠行

我想基于用户折叠行,同时将'1'放在相应的列上.

每个用户的每行只能有一个'1',因此不需要添加任何后续行.

我的df:

User  +1  +2  +3  +4  +5
   A   1   0   0   0   0
   A   0   1   0   0   0
   A   0   0   0   0   1
   B   0   0   1   0   0 
   B   0   0   0   1   0
Run Code Online (Sandbox Code Playgroud)

预期结果:

User  +1  +2  +3  +4  +5
   A   1   1   0   0   1
   B   0   0   1   1   0 
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激.

r dplyr

6
推荐指数
2
解决办法
7131
查看次数

R和dplyr中的组滞后/领先

我在尝试延迟按团队分组的日期时遇到了麻烦.

数据:

 df <- data.frame(Team = c("A", "A", "A", "A", "B", "B", "B", "C", "C", "D", "D"),
             Date = c("2016-05-10","2016-05-10", "2016-05-10", "2016-05-10",
                      "2016-05-12", "2016-05-12", "2016-05-12",
                      "2016-05-15","2016-05-15",
                      "2016-05-30", "2016-05-30"), 
             Points = c(1,4,3,2,1,5,6,1,2,3,9)
             )

Team      Date       Points
 A     2016-05-10      1
 A     2016-05-10      4
 A     2016-05-10      3
 A     2016-05-10      2
 B     2016-05-12      1
 B     2016-05-12      5
 B     2016-05-12      6
 C     2016-05-15      1
 C     2016-05-15      2
 D     2016-05-30      3
 D     2016-05-30      9
Run Code Online (Sandbox Code Playgroud)

预期结果:

Team      Date       Points   Date_Lagged
 A     2016-05-10      1          NA
 A     2016-05-10      4 …
Run Code Online (Sandbox Code Playgroud)

r dplyr

6
推荐指数
1
解决办法
1885
查看次数

如何在函数中编写facet_wrap(ggplot2)

我写了一个绘制条形图的函数.但是,当我得到一个方面的包装时,"〜"符号会使事情变得困难.

rf.funct <- function(dat, predictor, feature){
  ggplot(get(dat), aes(get(predictor), N)) +
    geom_bar(stat = 'identity') +
    facet_wrap(get(~feature)) # this is where the problem is
}
Run Code Online (Sandbox Code Playgroud)

我尝试过以下方法:

facet_wrap((get(~feature))) # invalid first argument
facet_wrap(paste0("~ ", get(feature))) # object 'feature' not found
Run Code Online (Sandbox Code Playgroud)

如何确保函数中包含"〜"符号?

r ggplot2 data.table

6
推荐指数
1
解决办法
707
查看次数

删除第一个重复行并保留其余行?

我想删除基于"用户"列的重复项,但只删除它出现的第一个实例.

DF:

User  No
A     1
B     1
A     2
A     3
A     4
C     1
B     2
D     1
Run Code Online (Sandbox Code Playgroud)

结果:(A1和B1删除)

User  No  
A     2
A     3
A     4
C     1
B     2
D     1
Run Code Online (Sandbox Code Playgroud)

我使用复制功能一直没有成功.

任何帮助,将不胜感激!谢谢!

r

5
推荐指数
3
解决办法
2319
查看次数

根据Dplyr减少或增加数量,找出差异

> df
Date      User  Current_Coins
01/01      1     150
01/02      1     100
01/01      2     100
01/02      2     150
01/01      3     100
01/02      3     150
01/03      3     100
01/04      3     200
01/04      3       0
Run Code Online (Sandbox Code Playgroud)

根据用户当前拥有多少硬币,我想总结使用dplyr使用和获得的硬币总和.

预期结果:

> df
User    Coins_Gained    Coins_Used
 1           0              50
 2          50               0
 3         150             250
Run Code Online (Sandbox Code Playgroud)

我尝试使用lag()但不分开硬币的使用和收益.我想不出一个雄辩的解决方案,任何帮助将不胜感激.

r dplyr

4
推荐指数
1
解决办法
69
查看次数

根据列删除重复行,同时保持下一列的最高值

我想从列x1和x2中删除重复项,同时保持x3中的较高值.

DF:

x1  x2  x3
 1   1   1
 1   1   2
 1   1   3
 2   2   2
 2   2   5   
Run Code Online (Sandbox Code Playgroud)

预期结果:

x1  x2  x3 
 1   1   3
 2   2   5
Run Code Online (Sandbox Code Playgroud)

我已经达到df [!duplicated(df [,c(1,2)]),]但它显示的是x3的最低值.我想得到最高的x3值.

提前谢谢.

r

1
推荐指数
2
解决办法
1876
查看次数

标签 统计

r ×6

dplyr ×3

data.table ×1

ggplot2 ×1