<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>Dear Anne,</div><div><br></div><div>No there are not strictly the same. </div><div><br></div><div>The one you mentioned is: </div><div><br></div><div>maximising[(SE+SP)/2]</div><div><br></div><div>the one is BIOMOD is:</div><div><br></div><div>minimising[abs(SE-SP)]</div><div><br></div><div>Both are used in the SDM field. Although there are not strictly equivalent, the associated thresholds are often very similar. </div><div><br></div><div>You can see the difference running the script below:</div><div><br></div><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 11px/normal Monaco; color: rgb(0, 113, 40); ">library<span style="color: #042299">(</span>BIOMOD<span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 11px/normal Monaco; color: rgb(0, 113, 40); ">library<span style="color: #042299">(</span>PresenceAbsence<span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 11px/normal Monaco; color: rgb(4, 34, 153); min-height: 15px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">data<span style="color: #042299">(</span>Sp.Env<span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(4, 34, 153); min-height: 16px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">Initial.State<span style="color: #042299">(</span>Response<span style="color: #042299">=</span>Sp.Env<span style="color: #042299">[,</span><span style="color: #2b6fb8">12</span><span style="color: #042299">:</span><span style="color: #2b6fb8">13</span><span style="color: #042299">], </span>Explanatory<span style="color: #042299">=</span>Sp.Env<span style="color: #042299">[,</span><span style="color: #2b6fb8">4</span><span style="color: #042299">:</span><span style="color: #2b6fb8">10</span><span style="color: #042299">], </span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">IndependentResponse<span style="color: #042299">=</span><span style="color: #db224a">NULL</span><span style="color: #042299">, </span>IndependentExplanatory<span style="color: #042299">=</span><span style="color: #db224a">NULL</span><span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(4, 34, 153); min-height: 16px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">Models<span style="color: #042299">(</span>GAM<span style="color: #042299"> = </span><span style="color: #db224a">TRUE</span><span style="color: #042299">, </span>NbRunEval<span style="color: #042299"> = </span><span style="color: #2b6fb8">1</span><span style="color: #042299">, </span>DataSplit<span style="color: #042299"> = </span><span style="color: #2b6fb8">80</span><span style="color: #042299">,</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); "><span style="color: #042299"> </span>Yweights<span style="color: #042299">=</span><span style="color: #db224a">NULL</span><span style="color: #042299">, </span>Roc<span style="color: #042299">=</span><span style="color: #db224a">TRUE</span><span style="color: #042299">, </span>Optimized.Threshold.Roc<span style="color: #042299">=</span><span style="color: #db224a">TRUE</span><span style="color: #042299">, </span>Kappa<span style="color: #042299">=</span>F<span style="color: #042299">, </span>TSS<span style="color: #042299">=</span>F<span style="color: #042299">, </span>KeepPredIndependent<span style="color: #042299"> = </span><span style="color: #db224a">FALSE</span><span style="color: #042299">, </span>VarImport<span style="color: #042299">=</span><span style="color: #2b6fb8">0</span><span style="color: #042299">,</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); "><span style="color: #042299"> </span>NbRepPA<span style="color: #042299">=</span><span style="color: #2b6fb8">0</span><span style="color: #042299">, </span>strategy<span style="color: #042299">=</span><span style="color: #b0140c">"circles"</span><span style="color: #042299">, </span>coor<span style="color: #042299">=</span>CoorXY<span style="color: #042299">, </span>distance<span style="color: #042299">=</span><span style="color: #2b6fb8">2</span><span style="color: #042299">, </span>nb.absences<span style="color: #042299">=</span><span style="color: #2b6fb8">1000</span><span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(4, 34, 153); min-height: 16px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(4, 34, 153); min-height: 16px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(176, 20, 12); "><span style="color: #007128">load</span><span style="color: #042299">(</span>"pred/Pred_Sp277"<span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(4, 34, 153); min-height: 16px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">data<span style="color: #042299">=</span>cbind<span style="color: #042299">(</span>Sp.Env<span style="color: #042299">[,</span><span style="color: #2b6fb8">1</span><span style="color: #042299">], </span>Sp.Env<span style="color: #042299">[,</span><span style="color: #2b6fb8">13</span><span style="color: #042299">], </span>Pred_Sp277<span style="color: #042299">[,</span><span style="color: #2b6fb8">3</span><span style="color: #042299">,</span><span style="color: #2b6fb8">1</span><span style="color: #042299">,</span><span style="color: #2b6fb8">1</span><span style="color: #042299">]/</span><span style="color: #2b6fb8">1000</span><span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(4, 34, 153); min-height: 16px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">plotroc<span style="color: #042299"> <- </span>roc.plot.calculate<span style="color: #042299">(</span>data<span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(4, 34, 153); min-height: 16px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(169, 65, 203); ">### Plot the change in sensitivity in function of the threshold</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">plot<span style="color: #042299">(</span>plotroc<span style="color: #042299">$</span>threshold<span style="color: #042299">, </span>plotroc<span style="color: #042299">$</span>sensitivity<span style="color: #042299">, </span>type<span style="color: #042299">=</span><span style="color: #b0140c">"l"</span><span style="color: #042299">, </span>col<span style="color: #042299">=</span><span style="color: #b0140c">"blue "</span><span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(169, 65, 203); ">### Plot the change in specificity in function of the threshold</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">lines<span style="color: #042299">(</span>plotroc<span style="color: #042299">$</span>threshold<span style="color: #042299">, </span>plotroc<span style="color: #042299">$</span>specificity<span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(169, 65, 203); ">### Plot the change in one criteria to select the threshold: (SE+SP)/2 in function of the threshold</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">lines<span style="color: #042299">(</span>plotroc<span style="color: #042299">$</span>threshold<span style="color: #042299">, (</span>plotroc<span style="color: #042299">$</span>specificity<span style="color: #042299">+</span>plotroc<span style="color: #042299">$</span>sensitivity<span style="color: #042299">)/</span><span style="color: #2b6fb8">2</span><span style="color: #042299">, </span>col<span style="color: #042299">=</span><span style="color: #b0140c">"red"</span><span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(169, 65, 203); ">### Add a red circle when maximising one criteria to select the threshold: (SE+SP)/2 </div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">points<span style="color: #042299">(</span>plotroc<span style="color: #042299">$</span>threshold<span style="color: #042299">[</span>which<span style="color: #042299">((</span>plotroc<span style="color: #042299">$</span>specificity<span style="color: #042299">+</span>plotroc<span style="color: #042299">$</span>sensitivity<span style="color: #042299">)/</span><span style="color: #2b6fb8">2</span><span style="color: #042299"> ==</span>max<span style="color: #042299">((</span>plotroc<span style="color: #042299">$</span>specificity<span style="color: #042299">+</span>plotroc<span style="color: #042299">$</span>sensitivity<span style="color: #042299">)/</span><span style="color: #2b6fb8">2</span><span style="color: #042299">))], </span>max<span style="color: #042299">((</span>plotroc<span style="color: #042299">$</span>specificity<span style="color: #042299">+</span>plotroc<span style="color: #042299">$</span>sensitivity<span style="color: #042299">)/</span><span style="color: #2b6fb8">2</span><span style="color: #042299">), </span>col<span style="color: #042299">=</span><span style="color: #b0140c">"red"</span><span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(169, 65, 203); ">### Plot the change in one criteria to select the threshold: min(abs((SE-SP)) in function of the threshold. This is the one in BIOMOD</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">lines<span style="color: #042299">(</span>plotroc<span style="color: #042299">$</span>threshold<span style="color: #042299">, </span>abs<span style="color: #042299">(</span>plotroc<span style="color: #042299">$</span>specificity<span style="color: #042299">-</span>plotroc<span style="color: #042299">$</span>sensitivity<span style="color: #042299">), </span>col<span style="color: #042299">=</span><span style="color: #b0140c">"orange"</span><span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(169, 65, 203); ">### Add a orange circle when minimising to select the threshold: min(abs((SE-SP)). This is the one in BIOMOD</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(0, 113, 40); ">points<span style="color: #042299">(</span>plotroc<span style="color: #042299">$</span>threshold<span style="color: #042299">[</span>which<span style="color: #042299">(</span>abs<span style="color: #042299">(</span>plotroc<span style="color: #042299">$</span>specificity<span style="color: #042299">-</span>plotroc<span style="color: #042299">$</span>sensitivity<span style="color: #042299">) ==</span>min<span style="color: #042299">(</span>abs<span style="color: #042299">(</span>plotroc<span style="color: #042299">$</span>specificity<span style="color: #042299">-</span>plotroc<span style="color: #042299">$</span>sensitivity<span style="color: #042299">)))], </span>max<span style="color: #042299">((</span>plotroc<span style="color: #042299">$</span>specificity<span style="color: #042299">+</span>plotroc<span style="color: #042299">$</span>sensitivity<span style="color: #042299">)/</span><span style="color: #2b6fb8">2</span><span style="color: #042299">), </span>col<span style="color: #042299">=</span><span style="color: #b0140c">"orange"</span><span style="color: #042299">)</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 13px/normal Courier; color: rgb(4, 34, 153); min-height: 16px; "><br></div></div><div><br></div><div>Hope it helps,</div><div><br></div><div>Wilfried</div><div><br></div><div><br></div><div><br></div><br><div><div>Le 11 août 2010 à 13:48, Anne Blach Overgaard a écrit :</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>Dear BIOMOD group,</div>
<div> </div>
<div>On page 46 in the BIOMOD manual it is explained that selecting the "Optimized threshold by ROC" gives a cutoff representing "the best probability threshold maximising the percentage of presence and absence correctly predicted for the evaluation data". Going through the SDM litterature different terms are used for these thresholds and I would just like to ask if any one could tell me if this threshold is equivalent to the one named "Maximising the sum of sensitivity and specificity" or "Maximum sensitivity plus specificity"</div>
<div> </div>
<div>Best regards,</div>
<div> </div>
<div>Anne<br clear="all"><br><br></div>
_______________________________________________<br>Biomod-commits mailing list<br><a href="mailto:Biomod-commits@lists.r-forge.r-project.org">Biomod-commits@lists.r-forge.r-project.org</a><br>https://lists.r-forge.r-project.org/cgi-bin/mailman/listinfo/biomod-commits<br></blockquote></div><br><div>
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><span class="Apple-style-span" style="font-size: 12px; "><div>--------------------------</div><div>Dr. Wilfried Thuiller</div><div>Laboratoire d'Ecologie Alpine, UMR CNRS 5553</div><div>Université Joseph Fourier</div><div>BP53, 38041 Grenoble cedex 9, France</div><div>tel: +33 (0)4 76 51 44 97</div><div>fax: +33 (0)4 76 51 42 79</div><div><br></div><div>Email: <a href="mailto:wilfried.thuiller@ujf-grenoble.fr">wilfried.thuiller@ujf-grenoble.fr</a><br>Home page: <a href="http://www.will.chez-alice.fr/">http://www.will.chez-alice.fr</a><br>Website: <a href="http://www-leca.ujf-grenoble.fr/equipes/tde.htm">http://www-leca.ujf-grenoble.fr/equipes/tde.htm</a><br><br>FP6 European MACIS project: <a href="http://www.macis-project.net/">http://www.macis-project.net</a><br>FP6 European EcoChange project: <a href="http://www.ecochange-project.eu/">http://www.ecochange-project.eu</a></div><div><br></div></span></div></div></span><br class="Apple-interchange-newline"></div><br class="Apple-interchange-newline"><br class="Apple-interchange-newline">
</div>
<br></body></html>