gpt4 book ai didi

r - R中的条件计数

转载 作者:行者123 更新时间:2023-12-05 00:29:59 25 4
gpt4 key购买 nike

我有一个问题,希望你们中的一些人可以帮助我。我正在做一篇关于药品和平行进口影响的论文。我正在 R 中处理这个问题,有一个面板数据集

我需要一个变量,它对给定的原始产品计数 - 在给定的时间段内有多少平行进口商。

Product_ID     PI     t    
1 0 1
1 1 1
1 1 1
1 0 2
1 1 2
1 1 2
1 1 2
1 1 2
2 0 1
2 1 1
2 0 2
2 1 2
2 0 3
2 1 3
2 1 3
2 1 3

理想情况下,我想要的是一个新列,例如在时间 t 时原始(PI = 0)的 PI​​ 产品数(PI = 1)。所以输出会是这样的:
Product_ID     PI     t     nPIcomp
1 0 1 2
1 1 1
1 1 1
1 0 2 4
1 1 2
1 1 2
1 1 2
1 1 2
2 0 1 1
2 1 1
2 0 2 1
2 1 2
2 0 3 3
2 1 3
2 1 3
2 1 3

我希望我已经把我的问题说清楚了:)

提前致谢,
亨里克

最佳答案

像这样的东西?

x <- read.table(text = "Product_ID     PI     t    
1 0 1
1 1 1
1 1 1
1 0 2
1 1 2
1 1 2
1 1 2
1 1 2
2 0 1
2 1 1
2 0 2
2 1 2
2 0 3
2 1 3
2 1 3
2 1 3", header = TRUE)

find.count <- rle(x$PI)
count <- find.count$lengths[find.count$values == 1]
x[x$PI == 0, "nPIcomp"] <- count

Product_ID PI t nPIcomp
1 1 0 1 2
2 1 1 1 NA
3 1 1 1 NA
4 1 0 2 4
5 1 1 2 NA
6 1 1 2 NA
7 1 1 2 NA
8 1 1 2 NA
9 2 0 1 1
10 2 1 1 NA
11 2 0 2 1
12 2 1 2 NA
13 2 0 3 3
14 2 1 3 NA
15 2 1 3 NA
16 2 1 3 NA

关于r - R中的条件计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16606654/

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