相关疑难解决方法(0)

复制data.frame的每一行并指定每行的复制数

df <- data.frame(var1 = c('a', 'b', 'c'), var2 = c('d', 'e', 'f'),
                 freq = 1:3)
Run Code Online (Sandbox Code Playgroud)

扩展上面data.frame的前两列的最简单方法是什么,以便每行显示"freq"列中指定的次数?

换句话说,从这里开始:

df
  var1 var2 freq
1    a    d    1
2    b    e    2
3    c    f    3
Run Code Online (Sandbox Code Playgroud)

对此:

df.expanded
  var1 var2
1    a    d
2    b    e
3    b    e
4    c    f
5    c    f
6    c    f
Run Code Online (Sandbox Code Playgroud)

r replicate dataframe

128
推荐指数
8
解决办法
9万
查看次数

在dplyr中导致长度不等于1或组长度的分组操作

我不确定使用哪个函数来执行以下操作:

library(data.table)
dt = data.table(a = 1:4, b = 1:2)

dt[, rep(a[1], 3), by = b]
#   b V1
#1: 1  1
#2: 1  1
#3: 1  1
#4: 2  2
#5: 2  2
#6: 2  2
Run Code Online (Sandbox Code Playgroud)

双方summarise并mutate不满意这个长度:

library(dplyr)
df = data.frame(a = 1:4, b = 1:2)

df %.% group_by(b) %.% summarise(rep(a[1], 3))
#Error: expecting a single value

df %.% group_by(b) %.% mutate(rep(a[1], 3))
#Error: incompatible size (3), expecting 2 (the group size) or 1
Run Code Online (Sandbox Code Playgroud)

r dplyr data.table

15
推荐指数
2
解决办法
6372
查看次数

标签 统计

r ×2

data.table ×1

dataframe ×1

dplyr ×1

replicate ×1