<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: Replicating Juckes&#039; CVM</title>
	<atom:link href="http://climateaudit.org/2006/11/27/replicating-juckes-cvm/feed/" rel="self" type="application/rss+xml" />
	<link>http://climateaudit.org/2006/11/27/replicating-juckes-cvm/</link>
	<description>by Steve McIntyre</description>
	<lastBuildDate>Wed, 19 Jun 2013 17:55:02 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
	<item>
		<title>By: Kevin</title>
		<link>http://climateaudit.org/2006/11/27/replicating-juckes-cvm/#comment-71456</link>
		<dc:creator><![CDATA[Kevin]]></dc:creator>
		<pubDate>Sun, 03 Dec 2006 00:15:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=930#comment-71456</guid>
		<description><![CDATA[#31 SCA also is widely used for TSA.  Have you had a look at that?]]></description>
		<content:encoded><![CDATA[<p>#31 SCA also is widely used for TSA.  Have you had a look at that?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: EP</title>
		<link>http://climateaudit.org/2006/11/27/replicating-juckes-cvm/#comment-71455</link>
		<dc:creator><![CDATA[EP]]></dc:creator>
		<pubDate>Fri, 01 Dec 2006 17:37:10 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=930#comment-71455</guid>
		<description><![CDATA[Speaking of stats, does anyone have any pointers to material on the net that          covers the types of validation stats discussed here? I&#039;m afraid my &lt;i&gt;Stats 101&lt;/i&gt; course notes are somewhat incomplete...]]></description>
		<content:encoded><![CDATA[<p>Speaking of stats, does anyone have any pointers to material on the net that          covers the types of validation stats discussed here? I&#8217;m afraid my <i>Stats 101</i> course notes are somewhat incomplete&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bender</title>
		<link>http://climateaudit.org/2006/11/27/replicating-juckes-cvm/#comment-71454</link>
		<dc:creator><![CDATA[bender]]></dc:creator>
		<pubDate>Thu, 30 Nov 2006 21:39:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=930#comment-71454</guid>
		<description><![CDATA[&lt;blockquote&gt;if one was an expert in it and no other languages, I can see why one might&lt;/blockquote&gt;

Hmmm, expert at Python vs. not expert at statistical innovation.

I know which approach I would choose, if I were a climatologist in that boat and didn&#039;t want my hide tanned during review.]]></description>
		<content:encoded><![CDATA[<blockquote><p>if one was an expert in it and no other languages, I can see why one might</p></blockquote>
<p>Hmmm, expert at Python vs. not expert at statistical innovation.</p>
<p>I know which approach I would choose, if I were a climatologist in that boat and didn&#8217;t want my hide tanned during review.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: John S</title>
		<link>http://climateaudit.org/2006/11/27/replicating-juckes-cvm/#comment-71453</link>
		<dc:creator><![CDATA[John S]]></dc:creator>
		<pubDate>Thu, 30 Nov 2006 21:33:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=930#comment-71453</guid>
		<description><![CDATA[I used to use GAUSS a lot for some econometric work - it is just a relatively high-level programming language and is not specifically a statistics package. But it was more flexible than the, then, alternative RATS. And is still useful in many situations that the current package, EViews, can&#039;t handle. But GAUSS was targeted at the statistical market in that it is optimised for matrix algebra and contained a lot of prewritten optimisation packages - so it was great for maximum likelihood. You use what you know, but some tools are better than others. I, for example, would never contemplate running a panel regression in anything other than a dedicated statistics package - that&#039;s just asking for trouble - but basic regressions can even be run in Excel these days (although this is surely a travesty of a similar order to death by Powerpoint).]]></description>
		<content:encoded><![CDATA[<p>I used to use GAUSS a lot for some econometric work &#8211; it is just a relatively high-level programming language and is not specifically a statistics package. But it was more flexible than the, then, alternative RATS. And is still useful in many situations that the current package, EViews, can&#8217;t handle. But GAUSS was targeted at the statistical market in that it is optimised for matrix algebra and contained a lot of prewritten optimisation packages &#8211; so it was great for maximum likelihood. You use what you know, but some tools are better than others. I, for example, would never contemplate running a panel regression in anything other than a dedicated statistics package &#8211; that&#8217;s just asking for trouble &#8211; but basic regressions can even be run in Excel these days (although this is surely a travesty of a similar order to death by Powerpoint).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Nicholas</title>
		<link>http://climateaudit.org/2006/11/27/replicating-juckes-cvm/#comment-71452</link>
		<dc:creator><![CDATA[Nicholas]]></dc:creator>
		<pubDate>Thu, 30 Nov 2006 21:03:33 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=930#comment-71452</guid>
		<description><![CDATA[Steve: It appears to smooth only if &quot;self.time_res&quot; is set, and if so prints out a message. Do you know that time_res is set when this function is called? Does the message get printed? I assume time_res stands for &quot;time residuals&quot;?

Python is, as I understand it, an object oriented/string processing language. You can use it for anything, but I don&#039;t think I would select it for mathematical applications. However, if one was an expert in it and no other languages, I can see why one might.]]></description>
		<content:encoded><![CDATA[<p>Steve: It appears to smooth only if &#8220;self.time_res&#8221; is set, and if so prints out a message. Do you know that time_res is set when this function is called? Does the message get printed? I assume time_res stands for &#8220;time residuals&#8221;?</p>
<p>Python is, as I understand it, an object oriented/string processing language. You can use it for anything, but I don&#8217;t think I would select it for mathematical applications. However, if one was an expert in it and no other languages, I can see why one might.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: KevinUK</title>
		<link>http://climateaudit.org/2006/11/27/replicating-juckes-cvm/#comment-71451</link>
		<dc:creator><![CDATA[KevinUK]]></dc:creator>
		<pubDate>Thu, 30 Nov 2006 18:45:37 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=930#comment-71451</guid>
		<description><![CDATA[#25 bender

&quot;Is it in the do_hockeystick.py function?&quot;

Are you sure you didn&#039;t mean

&quot;Is it in the do_hockeystick_CENSORED.py function?

KevinUK]]></description>
		<content:encoded><![CDATA[<p>#25 bender</p>
<p>&#8220;Is it in the do_hockeystick.py function?&#8221;</p>
<p>Are you sure you didn&#8217;t mean</p>
<p>&#8220;Is it in the do_hockeystick_CENSORED.py function?</p>
<p>KevinUK</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bender</title>
		<link>http://climateaudit.org/2006/11/27/replicating-juckes-cvm/#comment-71450</link>
		<dc:creator><![CDATA[bender]]></dc:creator>
		<pubDate>Thu, 30 Nov 2006 18:17:35 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=930#comment-71450</guid>
		<description><![CDATA[&lt;blockquote&gt;Juckes appears to have written functions from scratch to do elementary operations&lt;/blockquote&gt;
Could have been someone else wrote it for him. Either way, this does shows the, errr, &#039;idiocy&#039; of using Python over R. Why reinvent the wheel?]]></description>
		<content:encoded><![CDATA[<blockquote><p>Juckes appears to have written functions from scratch to do elementary operations</p></blockquote>
<p>Could have been someone else wrote it for him. Either way, this does shows the, errr, &#8216;idiocy&#8217; of using Python over R. Why reinvent the wheel?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve McIntyre</title>
		<link>http://climateaudit.org/2006/11/27/replicating-juckes-cvm/#comment-71449</link>
		<dc:creator><![CDATA[Steve McIntyre]]></dc:creator>
		<pubDate>Thu, 30 Nov 2006 17:20:21 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=930#comment-71449</guid>
		<description><![CDATA[Something else I just noticed in the do_regress code. Juckes smooths the proxy before doing the regression. In R, you can do regressions using the function lm and return all sorts of diagnostics. For anyone planning to do statistical work, it seems like a much more sensible language than Python, where Juckes appears to have written functions from scratch to do elementary operations.

&lt;blockquote&gt;#################################################
## currently only programmed for opt = &#039;mbh&#039;
#################################################
## calculates x Y^t (Y Y^t)^{-1}
## where:
## x = self.predictor in the calibration period: i.e. the temperature pcs.
## Y = self.predictand: i.e. the proxies.
###################################################
  def regress_coeff( self ):

      ac = self.predictor[:,-self.lcal:]
      if self.time_res:
          print &#039;smoothing predictand in inverse regression&#039;
          sp = basic_utils.smooth( self.predictand, self.time_res, pad=1 )
          self.gg = dot( ac, sp )/dot( sp, sp )
      else:
          sp = self.predictand
          self.gg = dot( ac, transpose( sp ) )/dot( sp, sp )

&lt;/blockquote&gt;]]></description>
		<content:encoded><![CDATA[<p>Something else I just noticed in the do_regress code. Juckes smooths the proxy before doing the regression. In R, you can do regressions using the function lm and return all sorts of diagnostics. For anyone planning to do statistical work, it seems like a much more sensible language than Python, where Juckes appears to have written functions from scratch to do elementary operations.</p>
<blockquote><p>#################################################<br />
## currently only programmed for opt = &#8216;mbh&#8217;<br />
#################################################<br />
## calculates x Y^t (Y Y^t)^{-1}<br />
## where:<br />
## x = self.predictor in the calibration period: i.e. the temperature pcs.<br />
## Y = self.predictand: i.e. the proxies.<br />
###################################################<br />
  def regress_coeff( self ):</p>
<p>      ac = self.predictor[:,-self.lcal:]<br />
      if self.time_res:<br />
          print &#8216;smoothing predictand in inverse regression&#8217;<br />
          sp = basic_utils.smooth( self.predictand, self.time_res, pad=1 )<br />
          self.gg = dot( ac, sp )/dot( sp, sp )<br />
      else:<br />
          sp = self.predictand<br />
          self.gg = dot( ac, transpose( sp ) )/dot( sp, sp )</p>
</blockquote>
]]></content:encoded>
	</item>
	<item>
		<title>By: Steve McIntyre</title>
		<link>http://climateaudit.org/2006/11/27/replicating-juckes-cvm/#comment-71448</link>
		<dc:creator><![CDATA[Steve McIntyre]]></dc:creator>
		<pubDate>Thu, 30 Nov 2006 17:14:14 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=930#comment-71448</guid>
		<description><![CDATA[I found something in the do_regress.py that does some flipping:
&lt;blockquote&gt;self.load_predictand( )
if proxy_id == &#039;mann_etal1999&#039;:
for k in range(3):
ss = sum( self.predictor[k,-self.lcal:]*self.predictand )
if ss &lt; 0:
self.predictor[k,:] = - self.predictor[k,:]&lt;/blockquote&gt;
The term  sum( self.predictor[k,-self.lcal:]*self.predictand )  will have the same sign as the correlation of the proxy to the target. But on its face, this only flips for MBH and doesn&#039;t appear to apply to the Union reconstruction. I can&#039;t tell why it would fail to flip the &quot;adjusted&quot; pc in the suffix &quot;pc&quot; reconstruction. Maybe it&#039;s to do with how the range is defined. Martin, are you there?  The flipping in the Union CVM is still unexplained - other than it was an &quot;error&quot;.  OK, but how did the error get there?
Now that I think of it, it would be interesting to check whether the Chesapeake series was flipped in the Moberg CVM.&lt;/blockquote&gt;]]></description>
		<content:encoded><![CDATA[<p>I found something in the do_regress.py that does some flipping:</p>
<blockquote><p>self.load_predictand( )<br />
if proxy_id == &#8216;mann_etal1999&#8242;:<br />
for k in range(3):<br />
ss = sum( self.predictor[k,-self.lcal:]*self.predictand )<br />
if ss &lt; 0:<br />
self.predictor[k,:] = &#8211; self.predictor[k,:]</p></blockquote>
<p>The term  sum( self.predictor[k,-self.lcal:]*self.predictand )  will have the same sign as the correlation of the proxy to the target. But on its face, this only flips for MBH and doesn&#8217;t appear to apply to the Union reconstruction. I can&#8217;t tell why it would fail to flip the &#8220;adjusted&#8221; pc in the suffix &#8220;pc&#8221; reconstruction. Maybe it&#8217;s to do with how the range is defined. Martin, are you there?  The flipping in the Union CVM is still unexplained &#8211; other than it was an &#8220;error&#8221;.  OK, but how did the error get there?<br />
Now that I think of it, it would be interesting to check whether the Chesapeake series was flipped in the Moberg CVM.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: bender</title>
		<link>http://climateaudit.org/2006/11/27/replicating-juckes-cvm/#comment-71447</link>
		<dc:creator><![CDATA[bender]]></dc:creator>
		<pubDate>Thu, 30 Nov 2006 15:13:56 +0000</pubDate>
		<guid isPermaLink="false">http://www.climateaudit.org/?p=930#comment-71447</guid>
		<description><![CDATA[Is it in the do_hockeystick.py function? Kidding.]]></description>
		<content:encoded><![CDATA[<p>Is it in the do_hockeystick.py function? Kidding.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
