trail.cam

Från tidsstämplar till djurens aktivitetsmönster: ett arbetsflöde för viltkameradata

En rödräv som korsar en snöig glänta i det djupblå ljuset strax före gryningen

Varje bild dina kameror har tagit bär redan på det mest värdefulla talet i hela datasetet, och det är inte arten. Det är tidpunkten på dygnet. En viltkamera utlöses när ett djur är närvarande, så högen med tidsstämplar du har samlat är ett urval av när djuret var vaket och i rörelse – fler utlösningar när det är aktivt, färre eller inga när det vilar. Läs av tillräckligt många av dessa tidpunkter och du kan rekonstruera formen på artens dygn: när det vaknar, när det toppar, när det blir tyst. Det är ett aktivitetsmönster, och en viltkamera är ett av få billiga, icke-invasiva sätt att skaffa ett sådant.

Här är hela kedjan i ett andetag, så att du vet vart detta bär hän. Du hämtar ett rent datum–tid-värde från varje bild (nästan alltid från EXIF-metadatan, ibland genom att läsa tidsstämpeln som är inbränd i själva bilden); du avgör vilka registreringar som räknas som oberoende händelser; du räknar om dessa klocktider till en cirkulär skala och, om din studie sträcker sig över årstider eller ligger långt från ekvatorn, till soltid; du anpassar en cirkulär kärndensitet till tidpunkterna för att estimera aktivitetskurvan; och om du jämför två arter beräknar du överlappskoefficienten (Δ) mellan deras kurvor. I R bor arbetet nästan uteslutande i tre paket – `overlap`, `activity` och `camtrapR` – och hela saken vilar på en oglamorös förutsättning: ungefär 100 detekteringar av arten innan du litar på kurvan.

Inget av dessa steg är svårt. Flera av dem är lätta att göra tyst och omärkligt fel – en klocka som har drivit, ett ”oberoende”-filter som raderar just den topp du försöker mäta, en soluppgång som flyttade sig tre timmar mellan juni och december medan din x-axel stod kvar. Den här texten följer kedjan från ände till ände och, lika viktigt, pekar ut var en trovärdig aktivitetsanalys skiljer sig från en värdelös. Skillnaden ligger oftast inte i statistiken. Den ligger i datahygienen uppströms.

Först: hämta rena datum–tid-värden ur varje bild

Du kan inte rekonstruera i efterhand när ett djur fotograferades – det finns ingen andra källa till det, så som det till exempel finns för en kameras koordinater. Som GBIF:s vägledning för bästa praxis säger rakt ut: datumet och tiden ”is the most important aspect of its metadata... and cannot be derived later”. Därför förtjänar det här steget mer omsorg än det vanligtvis får.

Den rena vägen är den inbäddade metadatan. När en kamera skriver en JPEG stämplar den in tagningstiden i EXIF-blocket, i fältet `DateTimeOriginal`. Verktygen läser fältet direkt: funktionen `recordTable()` i `camtrapR` lutar sig mot ExifTool för att hämta `DateTimeOriginal` från varje bild och sätta samman en städad registreringstabell med station, art och tidpunkt. Har dina bilder bra EXIF är detta ett löst problem – peka funktionen mot dina mappar och du har maskinläsbara datum–tid-värden på sekunden.

Två vanor uppströms gör allt detta säkrare, och båda handlar om kameran, inte om mjukvaran. För det första: ställ klockan på UTC eller lokal vintertid, och slå av den automatiska övergången till sommartid. Sommartid är en tyst sabotör av aktivitetsdata: ställer du en kameras klocka på sommaren och den inte känner till sommartid hamnar varje vinterbild en timme fel mot riktig klocktid, och tvärtom – ett systematiskt entimmesfel utsmetat över hälften av registreringarna. Rådet från `camtrapR` är den pragmatiska versionen av samma regel: om ditt studieområde använder sommartid men kamerorna inte registrerar det, så låt analysen stå i UTC, eftersom UTC inte har något sommartidshopp att snubbla på. För det andra: namnger eller organiserar du filerna själv, så börja filnamnen med datumet – `ÅÅÅÅMMDD_TTMMSS` – så att en alfabetisk sortering också blir kronologisk, och skriv tidpunkter i ISO 8601 (`ÅÅÅÅ-MM-DDTHH:MM:SS`) när du exporterar.

Upptäcker du i efterhand att en kameras klocka var felställd – en hel utplacering förskjuten med ett känt belopp – så går det att rädda. `camtrapR` har `timeShiftImages()` för att satsvis korrigera tidsstämplarna i bildmetadatan, och en egen `fixDateTimeOriginal()` för ett bestämt fel: vissa Reconyx HyperFire-kameror som inte lagrar datum och tid i standardfältet. Säkerhetskopiera bilderna först. Poängen är att klockfel som fångas tidigt bara är en olägenhet; klockfel som aldrig fångas blir ett uppdiktat aktivitetsmönster.

Definiera dina kategorier – men vet att de är en grov första sortering

Före all kurvanpassning lönar det sig att ha det vokabulär som fältet använt ända från början. I det ögonblick forskarna insåg att kameratidsstämplar kunde beskriva aktivitet var det första de gjorde att sortera arterna i fyra fack:

Det här är inte bara känslor; du kan definiera kategorierna operationellt. I en tvåårig undersökning av åtta däggdjur i norra Japan delade Ikeda och kollegor in varje bild i dag, natt eller skymning, jämförde bildfrekvensen mellan de tre perioderna med en envägs-ANOVA och placerade varje art i en kategori: dagaktiv om bilderna samlades på dagtid, nattaktiv om på natten, krepuskulär om i skymningen, och katemeral när det inte fanns ”no difference” mellan de tre perioderna. Det gav rena slutsatser – europeiska ekorrar dagaktiva, mårdhundar och tvättbjörnar nattaktiva, sikahjort och hare krepuskulära, japanska mårdar och brunbjörnar katemerala.

Två varningar följer med facken. Den första är att de är genuint grova, och att de mest intressanta fynden bor i sprickorna mellan dem. Samma sikahjortar ”changed peaks from twilight during spring–autumn to day-time in winter, possibly because of thermal constraints”, och mårdarna var katemerala större delen av året men nattaktiva på hösten. En enda kategorimärkning skulle ha suddat ut bådadera. Den andra varningen handlar om skala. Globalt är fyrdelningen skev: i ett dataset med tusentals däggdjursarter fann Bennie och kollegor att ”the majority of mammal species are nocturnal (69%...; 20% diurnal, 8.5% cathemeral, and 2.5% crepuscular)”, och att strategin är djupt bevarad genom däggdjursträdet (Pagels λ = 0,947). Din standardförväntan för ett ostuderat däggdjur bör alltså vara ”troligen nattaktivt”, och en självsäker dagaktiv-klassificering förtjänar en ny titt – särskilt med de placeringsfällor vi kommer till längre fram. Kategorierna är en användbar rubrik. Aktivitetskurvan är berättelsen.

Kategorierna är en användbar rubrik. Aktivitetskurvan är berättelsen.

Tidsmässigt oberoende: det mest avgörande – och mest omstridda – valet du gör

En grävling som födosöker vid foten av ett träd om natten i svalt nästan monokromt ljus

Här är det de goda intentionerna förstör aktivitetsanalyser. Kameror tar inte ett bild per besök. Ett enda djur som blir stående framför linsen, eller en kamera inställd på att skjuta serier om tre eller tio bilder per utlösning, kan producera dussintals tidsstämplar från ett enda aktivitetsögonblick. Lämnas de kvar hopar sig dessa nästan identiska tidpunkter och snedvrider kurvan mot ”de tidpunkter arten råkade uppträda framför dina kameror” – som `camtrapR` minnesvärt formulerar det om en argusfasan som älskade rampljuset.

Standardlösningen är ett tid-till-oberoende-filter (i `camtrapR` argumentet `minDeltaTime`): slå samman alla registreringar av samma art på samma station som faller inom ett visst fönster – 30 minuter och 60 minuter är de vanliga valen – till en enda händelse. Det är enkelt att tillämpa. `recordTable()` i `camtrapR` har standardvärdet `minDeltaTime = 0` (behåll allt) och låter dig sätta exempelvis 60 för att gallra datan; i paketets exempelkörning blir 68 bilder till 56 registreringar efter att duplicerade tidpunkter tagits bort, och sedan till 40 när ett entimmesfilter läggs på. Avgörande nog ”affects all activity plot results, as it determines temporal independence between records” – ändra fönstret och du ändrar kurvan.

Och det är just det som är problemet, för konventionen är omstridd ända ner till roten. Peral och kollegor gick igenom 134 fritt tillgängliga aktivitetsstudier med viltkamera och fann att ”nearly 70% (90 of 134...) apply a time-to-independence filter”, vanligen 30 minuter, ibland 60 eller till och med 24 timmar. Deras argument mot det är principiellt: dessa filter lånades från täthetsskattning, där flera bilder av en individ blåser upp räkningarna, men aktivitet är inte en rad avgränsade händelser – det är ett kontinuerligt tillstånd. Som de formulerar det får filtret observatören att ”effectively decide that the animal is inactive in this period, discarding meaningful information on animal activity”. Värre är att skadan är ojämn. Med ett Serengeti-dataset på 164 509 bilder visade de att talrika, sociala växtätare ”lost 74–93% of activity data when time-to-independence increased from 1 to 60 minutes”, medan sällsynta rovdjur förlorade bara 21–23 %. Filtreringen krympte inte bara urvalen; den deformerade kurvorna – gasellens middagstopp föll med så mycket som 44 % – och eftersom den träffade växtätare och rovdjur asymmetriskt snedvred den just de jämförelser av rovdjur–bytesdjur-överlapp som folk kör. Deras slutsats är otvetydig: användningen av tid-till-oberoende-filter i aktivitetsskattning ”is not valid and should not be used”.

Så vad bör du egentligen göra? Läs inte Peral som ”behåll varje bildruta rått”. Läs det precist. Serieutlösta bilder – de tio skotten en kamera fyrar av på en enda utlösning – är inget urval av beteende alls; de är en användarvald inställning, och Peral säger uttryckligen att dessa bör uteslutas från aktivitetsanalyser. Oenigheten är smalare än den ser ut vid första anblicken: nästan alla är överens om att du måste ta bort den artificiella anhopningen från serier och från ett enda djur som blir stående. Den levande oenigheten är om du sedan ska påtvinga ett fast klockfönster (30 eller 60 minuter) ovanpå detta. Den nyare, försvarbara positionen är att ta bort bara det uppenbara icke-oberoendet och i övrigt behålla registreringarna, eller – om du filtrerar – att rapportera vad filtreringen gör med dina skattningar i stället för att välja 30 minuter för att alla andra gjorde det. Vad du än väljer: ange det. Ett aktivitetsresultat är inte tolkbart utan sin oberoenderegel, och det faktum att publicerade studier använde ”variable and arbitrary” fönster betyder att deras kurvor ofta inte kan jämföras meningsfullt med varandra. Var studien som är tydlig.

Ett aktivitetsresultat är inte tolkbart utan sin oberoenderegel. Var studien som är tydlig.

Anpassa kurvan: cirkulär kärndensitet och von Mises-kärnan

En flock kronhjortar som betar på öppen mark i mjukt morgonljus

Nu statistiken, som är den enkla delen. Tidpunkten på dygnet är cirkulär – 23.59 ligger intill 00.00, inte elva timmar därifrån – så du kan inte anpassa en vanlig densitetskurva till den. Du anpassar en cirkulär. Standardmetoden, införd för kameradata av Ridout och Linkie och nu fältets standardval, anpassar en kärndensitet till de observerade tidpunkterna med hjälp av en von Mises-kärna (den cirkulära motsvarigheten till den gaussiska) i stället för den vanliga rätlinjiga kärnan. Resultatet är en jämn sannolikhetstäthet över dygnscykeln: hög där djuret är aktivt, låg där det inte är det.

Några få mekaniska detaljer spelar roll. Alla dessa verktyg arbetar i radianer, inte i timmar eller bråkdelar av ett dygn, så den första raden i nästan vilket skript som helst räknar om: `timeRad <- time 2 pi`. Utjämningen styrs av en bandbredd, exponerad i `overlap`-paketet som argumentet `adjust` – höj den över standardvärdet 1 för en plattare kurva, sänk för en spetsigare – och valet påverkar överlappsskattningarna nedströms, så det är inte rent kosmetiskt. I `activity`-paketet görs samma jobb av `fitact()`, som anpassar den cirkulära kärnan och, eftersom fler registreringar samlas när djuret är mer aktivt, härleder en samlad aktivitetsnivå – andelen av dygnet populationen tillbringar aktiv – från arean under fördelningen.

Två R-paket dominerar, och de kompletterar varandra. Använd `overlap` (funktionerna `densityPlot()`, `overlapPlot()`, `overlapEst()`) när din fråga handlar om att jämföra två arters kurvor. Använd `activity` (`fitact()`, `solartime()`, `compareCkern()`) när du vill ha en kvantifierad skattning av aktivitetsnivå med bootstrappade konfidensintervall, eller rikare verktyg för att jämföra fördelningar statistiskt. Och `camtrapR` knyter dem till dina bilder: `activityDensity()` anropar `overlap::densityPlot()`, `activityOverlap()` anropar `overlap::overlapPlot()` och `overlapEst()`, och `activityRadial()` och `activityHistogram()` ger dig urtavle- och timstapelvyerna, allt läst rakt från registreringstabellen. För att visualisera resultaten är radialdiagrammet och den överlagrade densitetskurvan de två arbetshästarna; densitetsdiagrammet är det som bör publiceras, eftersom det visar den faktiska skattade formen i stället för att aggregera till hela timmar.

Tidpunkten på dygnet är cirkulär – 23.59 ligger intill 00.00, inte elva timmar därifrån – så du kan inte anpassa en vanlig densitetskurva till den.

Jämföra arter: överlappskoefficienten (Δ)

Den klart vanligaste anledningen att göra denna analys är att fråga om två arter delar dygnet – rovdjur och bytesdjur, eller två konkurrenter. Standardsammanfattningen är överlappskoefficienten, Δ, arean som ligger under båda densitetskurvorna: den går från 0 (ingen överlapp alls) till 1 (identiska aktivitetsmönster). Tänk på den som den andel aktivitet de två arterna har gemensam.

Vilken estimator du använder beror på ditt mindre urval, och detta snubblar folk på. `overlap`-paketet erbjuder tre – Dhat1, Dhat4 och Dhat5 – och vägledningen är konkret: använd Dhat1 för små urval och Dhat4 för större. Exakt var tröskeln ligger anges något olika på olika ställen av samma författare, vilket är värt att veta: paketdokumentationen säger ”Dhat4 is best when the smallest sample has at least 50 observations”, medan paketvinjetten lägger övergången högre och rekommenderar Dhat1 när det mindre urvalet är under 50 och Dhat4 när det är ”greater than 75”, med en gråzon emellan. Den praktiska läsningen: är du bekvämt över ~75 i ditt mindre urval, Dhat4; är det klart litet, Dhat1; är du mittemellan, föredra Dhat1 och övertolka inte. En regel står fast i varenda källa – använd inte Dhat5, eftersom ”even tiny changes in the data can result in large, discontinuous changes in Dhat5, and it can take values > 1”. (En varning till `camtrapR`-användare: `activityOverlap()` returnerar Dhat1 som standard, så är dina urval stora bör du skicka in `overlapEstimator = "Dhat4"` snarare än att godta standardvärdet.)

Konfidensintervallen kommer från en bootstrap, och en utjämnad sådan är att föredra – anpassa en densitet och dra sedan simulerade observationer från den – eftersom vanlig resampling aldrig kan producera en tidpunkt utanför ditt observerade spann, vilket är fel för ett kontinuerligt aktivitetsmönster. Använd tillräckligt många resamplingar: exemplen visar ofta 1 000, men vinjetten är tydlig med att ”for a real analysis 10,000 bootstrap samples would be better”, och paketet varnar för att ”for stable estimates you need at least 999 bootstrap estimates, preferably 10,000”.

Konkreta tal gör detta handfast. I det kanoniska Kerinci-exemplet gav tigrar och makaker i en zon – båda med mer än 75 observationer – en Dhat4-överlapp på 0,42, en måttlig, partiell överlapp. I en nordirländsk rovdjur–bytesdjur-studie överlappade räv och hare 73 % (KI 68–77 %) på årsbasis, räv och kanin 80 %, räv och skogsmus 81 % – rovdjurets dygn följde bytesdjurets – medan mård och dagaktiva ekorrar visade det motsatta, en otakt förenlig med tidsmässigt undvikande. Bland sympatriska stora rovdjur på Qinghai–Tibet-platån överlappade snöleopard och lodjur Δ = 0,88 (KI 0,80–0,95), snöleopard och varg 0,86, varg och lodjur 0,83 – alla höga, alla övervägande nattaktiva, med överlappen fallande mot måttlig under den varma årstiden. En vanlig konvention för att tala om dessa tal: under 0,5 är låg överlapp, 0,5–0,8 måttlig, över 0,8 hög. Det är en användbar tumregel, inte en lag.

Ett lodjur som går längs en skogsstig i skymningen sett från respektfullt avstånd

Hur mycket data är nog? Ungefär 100 detekteringar

Du kan köra varenda funktion ovan på ett dussin bilder. Du bör inte. Frågan om urvalsstorlek har ett rent empiriskt svar från Lashley och kollegor, som jämförde kameragenererade aktivitetskurvor mot ”facit” från radiomärkning och delade upp datan i delurval för att se noggrannheten försämras. Deras fynd: ”mean overlap increased and overlap error decreased rapidly as sample sizes increased until an asymptote near 100 detections”, varefter mer data gav föga förbättring. Deras rekommendation är talet att minnas – samla minst 100 detekteringar av en målart innan du estimerar dess aktivitetskurva.

Två ärliga förbehåll kring dessa 100. För det första kan insatsen för att 100 detekteringar ”may vary widely depending on the ecology, mobility, and detectability of the species” – trivialt för ett vanligt hjortdjur, en hel säsongs arbete för ett sällsynt kattdjur. Bete kan hjälpa: i den studien gav betesförsedda (”aktiva”) kameror en 700 gånger högre detekteringsfrekvens för hjortdjur än passiva kameror placerade längs stråk, vilket spelar roll när du kapplöper mot ett urval inom ett biologiskt meningsfullt tidsfönster. För det andra matchade kamerakurvorna radiomärkningen väl i form men avvek i storleken på topparna, även vid goda urvalsstorlekar – överlappen med radiomärkt facit låg på Δ = 0,74–0,84, med statistiskt signifikanta skillnader koncentrerade vid topptiderna för födosök. Kameror är utmärkta på att fånga när en art är aktiv; var mer försiktig med att läsa den exakta höjden på en topp.

För själva bootstrappen är golvet lägre men fortfarande reellt: `overlap`-paketet noterar att 40 bootstrap-skattningar är det absoluta minimumet för ett 95-procentigt konfidensintervall, 200 för 99 % – men, återigen, du vill ha hundratals till tusentals för stabilitet, inte minimumet.

Klocktid mot soltid: korrektionen de flesta tillfälliga analyser hoppar över

Det här är steget som skiljer en noggrann aktivitetsanalys från en slarvig, och det är osynligt om du inte vet att du ska leta efter det. Soluppgång och solnedgång flyttar sig genom året, och de flyttar sig mer ju längre från ekvatorn du är. Slår du samman bilder över årstider på en fast klocktidsaxel blir de två topparna hos ett krepuskulärt djur – som egentligen följer gryning och skymning – utsmetade till breda, utplattade pucklar, eftersom ”gryning” var 05.00 i juni och 07.30 i december. Slå samman över ett tillräckligt brett spann och du kan till och med fabricera en överlapp som inte är verklig: vinjettens exempel med en fladdermus som kommer fram vid solnedgång och en hök som slår sig till ro vid solnedgång visar noll överlapp under vilken enskild månad som helst, och ändå visar den sammanslagna datan en skenbar överlapp uteslutande för att solnedgången flyttade sig.

Lösningen är att uttrycka varje bilds tidpunkt relativt solen i stället för klockan. Båda huvudpaketen gör det. I `overlap` ”converts a vector of clock times to 'sun times', by mapping sunrise to π/2 and sunset to 3π/2” gör `sunTime()` detta, givet varje registrerings datum och position. I `activity` förankrar `solartime()` klocktiderna till medelsoluppgång och medelsolnedgång för studiens koordinater och returnerar både en klocktids- och en soltidsversion, så att du kan jämföra dem. Tumregeln som faller ut av detta: ju längre från ekvatorn du är, och ju mer av året din studie spänner över, desto mer betyder korrektionen – den underliggande aktivitetsnivåmetodens antaganden är uttryckligen ”less likely met in large predators, or in high-latitude winters”. Nära ekvatorn, eller för en studie begränsad till ett enda kort fönster, är klocktid vanligtvis okej.

I praktiken gör de noggranna studierna det helt enkelt. En studie av 61 arter över kinesiska bergsskogar ”converted clock time for each detection to a relative solar time to eliminate the impacts of day-length variation” innan kurvorna anpassades. Platå-rovdjursstudien standardiserade alla tagningstider till soltid med `overlap::sunTime()`, uttryckligen för att soluppgången varierade från 5.30 till 8.30 över året. Den nordirländska studien försköt varje registrering mot den närmaste solhändelsen – morgonregistreringar relativt soluppgång, kvällsregistreringar relativt solnedgång – så att en registrering 22.10 med solnedgång 20.00 blev ”−2 h 10 min”, ett rent mått på hur djupt in i natten djuret var aktivt. Satt dina kameror på ett ställe en sommarmånad nära tropikerna kan du hoppa över detta. Annars: räkna om – och notera att aktivitetsfunktionerna i `camtrapR` använder klocktid, inte soltid, så behöver du korrektionen måste du lägga på den själv innan du plottar.

Det här är steget som skiljer en noggrann aktivitetsanalys från en slarvig, och det är osynligt om du inte vet att du ska leta efter det.

Fallgroparna som tyst förstör ett aktivitetsmönster

Ett bergslandskap vid soluppgång med solen lågt över en bergskam som kastar långt ljus

De flesta värdelösa aktivitetsanalyser ryker inte på statistiken. De ryker uppströms. De återkommande felfallen, ungefär i ordning efter hur ofta de biter:

Placeringsfällan är värd att dröja vid, för den lurar noggranna människor. Kameror satta på stigar och vägar – precis där du placerar dem för att fånga rovdjur eller maximera detekteringar – registrerar djur som använder stigar, vilket inte är samma sak som att djur är aktiva. Tanwar och kollegor körde det rena experimentet i ett indiskt tigerreservat, där de placerade stigkameror och slumpmässiga kameror sida vid sida. Stigkamerorna visade hjortdjur och partåiga hovdjur – axishjort, nilgauantilop, vildsvin, gasell – med ”predominantly diurnal activity with very few captures at night”. De slumpmässiga kamerorna, som provtog landskapet i stället för stigarna, avslöjade betydande nattaktivitet hos samma arter; nilgauantilopen vippade till och med över till en nattaktiv topp, med överlappen mellan stig- och slumpestimat så låg som Δ = 0,41. Skälet är beteendemässigt: ”trails are extensively used by predators during night”, så de partåiga hovdjuren undviker dem efter mörkrets inbrott – ett antipredator-grepp som får dem att verka dagaktiva för en stigkamera. Författarnas varning är en som varje aktivitetsstudie bör ta till sig: publicerade aktivitetsmönster hämtade från rovdjursinriktade stigundersökningar ”are likely biased towards diurnal activity”. Överlapp-vinjetten gör samma poäng från andra sidan – en kamera på en stig mäter ”walking on trails”, så två arters överlapp är överlappen i deras stigvandring, och ”a browsing herbivore and the carnivore stalking it are probably both 'inactive' by this definition”. Lösningen är design: slumpmässiga kameror eller kameror utanför stig ger en ärligare aktivitetsbild, och som ett minimum bör du upplysa om att stigplacering snedvrider mot dagtid.

En sista, finare varning: var försiktig med att slå samman heterogen data av vilket slag som helst, inte bara över årstider. Att kombinera lokaler eller perioder med genuint olika aktivitet blåser upp överlappsskattningarna, ”and this apparent overlap is an artifact of pooling”. Och kom ihåg att det du faktiskt mäter är detekteringar på kameror, som tolkar ”aktiv” som ”rör sig förbi en sensor” – ett verkligt men partiellt fönster in i beteendet. Tolka artinteraktioner med omsorg; vinjettens varnande historia är en studie där dhole och vildsvin tycktes dela dygnet, vilket antydde att dhole åt vildsvin – tills spillningsanalys visade att dhole mestadels åt hjortdjur i stället.

De flesta värdelösa aktivitetsanalyser ryker inte på statistiken. De ryker uppströms.

Vart detta är på väg: hierarkiska modeller

En liten diskret viltkamera fastspänd på ett träd riktad mot en öppen skogsglänta långt från någon stig

Kärndensitetsskattning är fältets standard, och för de flesta frågor är det det rätta verktyget. Men det är värt att känna till dess tak, för metodlitteraturen är aktivt på väg förbi det. Iannarilli och kollegor lägger fram KDE:s begränsningar rakt ut: det slår samman data över lokaler och ignorerar därmed variation från lokal till lokal, vilket ger överdrivet självsäker osäkerhet; det är känsligt för bandbreddsvalet i små urval; det kan inte ta in kovariater eller formellt testa hypoteser; och det ”only consider[s] records in which an animal was detected, discarding information about when sampling was conducted but the species was not recorded”. Den sista är subtil men verklig – en KDE slänger varje kameratimme då ingenting hände, trots att dessa nollor bär information om när arten inte var aktiv.

Det föreslagna alternativet är hierarkiska modeller – trigonometriska generaliserade linjära blandade modeller (sinus- och cosinustermer med slumpeffekter för lokal, via `glmmTMB` eller `lme4`) eller GAM:er med cykliska kubiska splines (via `mgcv`) – som binnar datan i tidsintervall, använder icke-detekteringarna, tar hänsyn till variation mellan lokaler och låter dig testa hur årstid eller en konkurrents närvaro förskjuter kurvan. I en studie över 100 lokaler i Minnesota kvantifierade denna ansats aktiviteten hos svartbjörn och prärievarg, samtidigt som den blottlade ”considerable site-to-site heterogeneity, an aspect that has been largely ignored” av sammanslagen KDE. Dessa modeller är mer krävande – en vanlig tumregel är 10 eller fler lokaler innan man anpassar slumpeffekter – och överdrivet för en beskrivning av en art på en plats. För de flesta läsare är KDE plus en tydligt angiven oberoenderegel och en soltidskorrektion det rätta valet idag. Men handlar din fråga om kovariater, flera lokaler eller formella hypotestester är det här du ska titta vidare.

Vanliga frågor

Vad är det minsta antalet detekteringar som behövs för att estimera ett aktivitetsmönster från viltkameror?

Ungefär 100. Noggrannhet och precision förbättras kraftigt allteftersom urvalet växer och träffar sedan en asymptot nära 100 detekteringar, vilket är det rekommenderade minimumet innan du estimerar en aktivitetskurva. Du kan anpassa en kurva på färre, men den blir brusig och bör inte tillmätas mycket tolkningsvikt.

Bör jag lägga på ett 30- eller 60-minuters oberoendefilter på mina bilder?

Det är genuint omdebatterat. Filtret är konventionellt och tar bort anhopningen från serier och stillastående djur, men en stor analys argumenterar för att fasta tid-till-oberoende-filter är olämpliga för aktivitetsdata – de kan kasta bort huvuddelen av vissa arters registreringar och snedvrida de resulterande kurvorna och överlappen. Den försvarbara medelvägen: uteslut alltid serieutlösta bilder, ta bort uppenbart icke-oberoende, tänk efter två gånger innan du påtvingar ett fast klockfönster, och om du filtrerar, rapportera dess effekt på dina skattningar.

Vad mäter överlappskoefficienten (Δ) egentligen?

Det är arean som delas under två arters aktivitetsdensitetskurvor, från 0 (ingen gemensam aktivitet) till 1 (identiska mönster) – den andel av dygnet två arter är aktiva samtidigt. En vanlig tumregel läser under 0,5 som låg överlapp, 0,5–0,8 som måttlig och över 0,8 som hög.

Behöver jag räkna om till ”soltid”, och hur?

Ja, om din studie spänner över årstider eller ligger en bra bit från ekvatorn – ju längre från ekvatorn och ju längre studie, desto mer betyder det. Att slå samman över skiftande soluppgång/solnedgång på en klocktidsaxel plattar ut toppar och kan fabricera överlapp. Använd `overlap::sunTime()` eller `activity::solartime()`, som förankrar varje registrering till soluppgång och solnedgång efter datum och position.

Vilket R-paket bör jag använda – `overlap`, `activity` eller `camtrapR`?

Alla tre, för olika jobb. `camtrapR` hämtar tidsstämplarna ur dina bilder och producerar registreringstabellen och snabba aktivitetsdiagram; `overlap` är verktyget för att jämföra två arter via Δ-koefficienten; `activity` är bäst för att estimera en samlad aktivitetsnivå med konfidensintervall. Notera att aktivitetsfunktionerna i `camtrapR` använder klocktid, så lägg på varje soltidskorrektion själv först.

Kan jag lita på ett aktivitetsmönster från kameror satta på stigar?

Med försiktighet. Stigplacerade kameror registrerar stiganvändning, inte aktivitet i allmänhet, och kan få en art att verka mer dagaktiv än den är – hjortdjur undviker stigar om natten för att undvika rovdjur, så stigkameror underrapporterar deras nattaktivitet. Slumpmässiga kameror eller kameror utanför stig ger en ärligare kurva; som ett minimum bör du upplysa om att stigplacering snedvrider mot dagtid.