J'essaie de compter le nombre de groupes de dépressions (valeurs négatives) d'un ensemble de données climatiques et d'avoir moins d'idée sur la façon de s'y prendre . Permettez-moi d'expliquer le scénario. J'ai une brique raster avec 468 couches et chaque couche a 7458 cellules.compter les dépressions (groupe de nombres négatifs) dans le temps à partir d'une brique raster, R
> cntneg
class : RasterBrick
dimensions : 66, 113, 7458, 468 (nrow, ncol, ncell, nlayers)
resolution : 0.108, 0.108 (x, y)
extent : 77.946, 90.15, 24.946, 32.074 (xmin, xmax, ymin, ymax)
coord. ref. : NA
values : in memory
min values : -359.51 -341.21 -315.45 -148.10 -187.39 -52.87 -66.72 -52.17 -286.81 -306.74 ...
max values : -7.589 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 0.000 ...
Maintenant, par exemple, permet de prendre le pixel 5000e
> cntneg[5000]
Ce qui va me donner 468 valeurs de ce pixel au fil du temps.
[1] -90.795107 -89.990016 -94.840754 0.000000 -15.085517 0.000000
[7] 0.000000 0.000000 0.000000 -12.469657 -114.757702 -115.372023
[13] -107.194478 -92.916680 -115.105817 -113.205776 -115.003430 -62.175070
[19] 0.000000 0.000000 0.000000 -72.358073 -105.006508 -115.372023
[25] -48.836959 -102.314928 -113.271826 -115.372023 -79.530055 0.000000
[31] 0.000000 0.000000 0.000000 -15.048987 -115.208204 -115.372023
[37] -115.003430 -108.757617 -113.122594 -115.372023 -111.699048 -17.618498
[43] 0.000000 0.000000
Maintenant ici je dois faire deux tâches
1) numéro de nombre de fois que la pluie est allé en dessous de la moyenne - ceux dont les valeurs négatives. Et les zéros ont des valeurs RF positives (que j'ai converties en zéro en reclassant) pour faciliter le calcul. Dans l'exemple ci-dessus, je veux choisir le groupe de nombres négatifs et compter. à savoir, (-90,795107 -89,990016 -94,840754), (-15,085517), (-12,469657 -114,757702 -115,372023, -107,194478 -92,916680 -115,105817 -113,205776 -115,003430 -62,175070), (-72,358073 -105,006508 -115,372023, -48,836959 -102,314928 -113.271826 -115.372023 -79.530055) etc. La valeur de pixel de couche résultante devrait être le nombre de ces groupes, qui dans ce cas est 5. Comme sage doit faire pour tous les pixels le long de la dimension de temps.
2) Pour chaque groupe je veux choisir les valeurs minimales et le pixel obtenu aura la somme de ces valeurs minimales. Si un groupe a une valeur, gardez la même chose.
Je suis bloqué pour commencer avec ce processus. Je suppose que j'ai besoin de convertir la brique en dataframe et le faire.
Quelqu'un peut-il m'aider à donner l'exemple?
Vraiment apprécier toute aide. Désolé, si l'explication est confuse.
Cordialement SP