tag:blogger.com,1999:blog-3727209628133289053.post2422877168527126378..comments2022-03-30T17:15:28.386-07:00Comments on Last Resort Software: Homogeneity analysis of hierarchical classificationsMichael Bedwardhttp://www.blogger.com/profile/17736007204837985875noreply@blogger.comBlogger6125tag:blogger.com,1999:blog-3727209628133289053.post-849235082227540412010-08-16T18:30:18.449-07:002010-08-16T18:30:18.449-07:00Hi Martin,
GeoTools ? Small world :)
Yes please em...Hi Martin,<br />GeoTools ? Small world :)<br />Yes please email me - I'd like to have a look.<br />cheers<br />MichaelMichael Bedwardhttps://www.blogger.com/profile/17736007204837985875noreply@blogger.comtag:blogger.com,1999:blog-3727209628133289053.post-52865551259644344452010-08-16T05:26:08.216-07:002010-08-16T05:26:08.216-07:00Hi Michael,
I have tried it with both approaches (...Hi Michael,<br />I have tried it with both approaches (mine, radius based, and yours, slope based, the results are similar, although not identical, depending on a few parameters.). Is it ok if I email (would use your contact from the geotools mailing list, if that's ok) you the pdf with printouts and the code? I am not sure how I would put it here. If you think it's interesting, feel free to put it then to your blog. <br />Cheers<br />MartinMartinhttps://www.blogger.com/profile/10162454503382276054noreply@blogger.comtag:blogger.com,1999:blog-3727209628133289053.post-34427109034112087482010-08-15T04:46:39.062-07:002010-08-15T04:46:39.062-07:00Hi Martin,
Yes that might be useful, though I susp...Hi Martin,<br />Yes that might be useful, though I suspect it would be more fiddly than the constant slope approach. It would probably also be a good idea to exclude the last portion of the curve which often has a kick upwards as you approach all groups being singletons.<br /><br />Another idea that might be worth mentioning: you could 'test' (in a loose sense) the usefulness of splitting a group into two child groups via a monte carlo procedure where you randomly allocate objects from the parent group to the child groups and compare the average within group distance to the 'real' child groups. I might do a post on that to illustrate the idea.Michael Bedwardhttps://www.blogger.com/profile/17736007204837985875noreply@blogger.comtag:blogger.com,1999:blog-3727209628133289053.post-78616211937111626602010-08-13T06:19:01.269-07:002010-08-13T06:19:01.269-07:00another idea would b to look for the point of max ...another idea would b to look for the point of max curvature (would probably first need to smooth the graph).<br />http://www.intmath.com/applications-differentiation/8-radius-curvature.php<br />What do you reckon?Martinhttps://www.blogger.com/profile/10162454503382276054noreply@blogger.comtag:blogger.com,1999:blog-3727209628133289053.post-76107432645971524492010-08-13T02:09:10.940-07:002010-08-13T02:09:10.940-07:00Hi Martin,
One simple way (a fudge really) is to t...Hi Martin,<br />One simple way (a fudge really) is to try to detect when the slope of the curve is more or less constant for a while, indicating that you (could) have passed the 'elbow' (if there was one). If the slope is constant-ish the second derivative will be near zero for successive points. The following function attempts to do this...<br /><br />function( h, tol=0.02, npoints=3 ) {<br />d2 <- diff(h[,2], 1, 2)<br />for (i in 1:(length(d2)-npoints)) {<br />if (all(abs(d2[i:(i+npoints)]) <= tol)) {<br />return(i+2)<br />}<br />}<br />cat("bummer - failed")<br />NULL<br />}<br /><br />If you try that out let me know how you go. Keep in mind that it is definitely a "rough" method :)Michael Bedwardhttps://www.blogger.com/profile/17736007204837985875noreply@blogger.comtag:blogger.com,1999:blog-3727209628133289053.post-43663786387780167242010-08-12T03:23:58.806-07:002010-08-12T03:23:58.806-07:00Hi Michael,
excellent post, thanks, it actually he...Hi Michael,<br />excellent post, thanks, it actually helps me with my current work. Would you know of a nice (?simple) way to automatically determine the number of the groups, not by pure visual assessment?<br />Thanks,<br />MartinMartinhttps://www.blogger.com/profile/10162454503382276054noreply@blogger.com