gpt4 book ai didi

r - 如何估算特定条件的值?

转载 作者:行者123 更新时间:2023-12-05 00:22:18 26 4
gpt4 key购买 nike

我的问题可能有两个方面:我想为特定条件和特定群体估算两组值。

用数据来解释一下:

df <- data.frame(id = c(rep("a",6),rep("b",6),rep("c",7)), 
num = c(rep(1:6, 2),rep(1:7)),
status = c(rep("good",6),rep("bad",6),rep("bad",7)), value = c(100))

> df
id num status value
1 a 1 good 100
2 a 2 good 100
3 a 3 good 100
4 a 4 good 100
5 a 5 good 100
6 a 6 good 100
7 b 1 bad 100
8 b 2 bad 100
9 b 3 bad 100
10 b 4 bad 100
11 b 5 bad 100
12 b 6 bad 100
13 c 1 bad 100
14 c 2 bad 100
15 c 3 bad 100
16 c 4 bad 100
17 c 5 bad 100
18 c 6 bad 100
19 c 7 bad 100
>

如果状态 = bad然后扩建 num到 50 并估算 0在值(value)。

所以对于 id 'b' 和 'c',我会产生 44 行和 43 行,在 num 中按顺序编号, 分别。和 value对于那些新行将是 0 ...

非常感谢任何和所有帮助。

最佳答案

您可以生成“构建”数据,然后将其堆叠:

require(data.table)
DT0 <- data.table(df)

DT <- rbind(
DT0,
DT0[status=="bad",list(num=.N:49+1L,status="bad",value=0),by=id]
)[order(id,num)]

您必须安装 data.table先打包。

关于r - 如何估算特定条件的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30109017/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com