【发布时间】:2020-09-03 20:56:19
【问题描述】:
我正在使用 Covid-19 案例表(列是日期,文件是国家/地区)进行 R 项目,我想找到第一列的索引,其中案例数不为零特定国家/地区。
我知道如何索引特定国家:例如i_arg <- which(rownames(datos) == "Argentina")
和一个具体的日期。但不是基于特定行和之前行的值满足特定条件的日期(因为我想要第一列的索引,其特定行的值是第一个不为 0 的列特定行)。
我知道这一定是个愚蠢的问题,但我无法在任何地方找到有关如何执行此操作的信息。
这是 MrFlick 建议的前几个国家/地区的数据:
“1/22/20”“1/23/20”“1/24/20”“1/25/20”“1/26/20”“1/27/20”“1/28/ 20" “1/29/20” “1/30/20” “1/31/20” “2/1/20” “2/2/20” “2/3/20” “2/4/20” “2/5/20” “2/6/20” “2/7/20” “2/8/20” “2/9/20” “2/10/20” “2/11/20” “2/12/20” “2/13/20” “2/14/20” “2/15/20” “2/16/20” “2/17/20” “2/18/20” “2/19/20” “2/20/20” “2/21/20” “2/22/20” “2/23/20” “2/24/20” “2/25/20” “2/26/20” “2/27/20” “2/28/20” “2/29/20” “3/1/20” “3/2/20” “3/3/20” “3/4/20” “3/5/20” “3/6/20” “3/7/20” “3/8/20” “3/9/20” “3/10/20” “3/11/20” “3/12/20” “3/13/20” “3/14/20” “3/15/20” “3/16/20” “3/17/20” “3/18/20” “3/19/20” “3/20/20” “3/21/20” “3/22/20” “3/23/20” “3/24/20” “3/25/20” “3/26/20” “3/27/20” “3/28/20” “3/29/20” “3/30/20” “3/31/20” “4/1/20” “4/2/20” “4/3/20” “4/4/20” “4/5/20” “4/6/20” “4/7/20” “4/8/20” “4/9/20” “4/10/20” “4/11/20” “4/12/20”
“阿富汗”0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 4 4 5 7 7 7 11 16 21 22 22 22 24 24 40 40 74 84 94 110 110 120 170 174 237 273 281 299 349 367 423 444 484 521 555 607
“阿尔巴尼亚”0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 10 12 23 33 38 42 51 55 59 64 70 76 89 104 123 146 174 186 197 212 223 243 259 277 304 333 361 377 383 400 409 416 433 446
“阿尔及利亚”0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 3 5 12 12 17 17 19 20 20 20 24 26 37 48 54 60 74 87 90 139 201 230 264 302 367 409 454 511 584 716 847 986 1171 1251 1320 1423 1468 1572 1666 1761 1825 1914
“安道尔”0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 39 39 53 75 88 113 133 164 188 224 267 308 334 370 376 390 428 439 466 501 525 545 564 583 601 601 638
“安哥拉”0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 2 3 3 3 4 4 5 7 7 7 8 8 8 10 14 16 17 19 19 19 19 19 "安提瓜和巴布达" 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 3 3 3 7 7 7 7 7 7 7 9 15 15 15 15 19 19 19 19 21 21
“阿根廷”0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 2 8 12 12 17 19 19 31 34 45 56 68 79 97 128 158 266 301 387 387 502 589 690 745 820 1054 1054 1133 1265 1451 1451 1554 1628 1715 1795 1975 1975 2142
文件名为“data_covid19.txt”并以这种方式导入
datos <- read.table("data_covid19.txt", header = TRUE, check.names = FALSE)
我想要索引,所以我可以像这样选择我需要的数据:
datos[i_arg, first:last]
地点:
i_arg <- which(rownames(datos) == "Argentina")
last <- which(colnames(datos) == "3/29/20") #specific date
而first是满足条件的列的索引
谢谢!
【问题讨论】:
-
如果您包含一个简单的reproducible example,其中包含可用于测试和验证可能解决方案的示例输入和所需输出,则更容易为您提供帮助。数据图片没有帮助,因为我们无法复制/粘贴数据进行测试。最好在问题本身中仅包含一个简单的示例 data.frame。