I'm planning on contributing A-DBSCAN, a method introduced in this paper (accepted, so working paper and online version will come out shortly and will update this link), as I think it'll be a nice addition to the library. I have two questions:
sklearn
API for DBSCAN where possible and, in theory, it could be used in non-spatial contexts, but I think it's best when used with spatial points. esda
as it's an exploratory method, but I could be wrong.What do you think? I'd like to press with the addition so it can ideally make it to the January release of the meta package #naiveoptimist 😂
very cool!
spopt is the successor to region
, where we have the other clustering algos, so it might make the most sense there? Obviously, we'll probably want to include it in geosnap as well. We're planning to make a pretty substantial push on spopt at UCR over the next couple months, so the timing could mesh well (though it could also delay getting this function into the metapackage if you definitely want it included in a hurry)
Without knowing exactly what the code does/looks like, I would agree with @knaaptime about it probably fitting best into spopt
.
I did think about spopt
but my sense is that it is not really a spatial optimisation; it's more of an extension to the traditional DBSCAN that provides a method for inference on the "blurriness" of boundaries. In that sense, it's a bit like a LISA for points (being grossly wrong in many senses but hopefully gets the point).
Yet another option would be pointpats
?
I'm definitely cool with whatever works for the long term. If we settle on esda
, I'd love to get it in before the Jan release, but if we decide it works best somewhere else, I'm happy letting it wait a bit longer so it finds the best home.
yeah i see the tension here... on the one hand, it isnt really an optimization problem. But on the other hand, conceptually it kinda makes sense to keep the clusterers together. I don't feel terribly strongly one way or the other
Indeed. It stretches between sklearn
and pysal
, and within the last, in between spopt
and esda
/pointpats
. My vote would go for either of the latter two as it's not an optimisation and it's not an exhaustive "clustering" in that it identifies clusters but also noise points (in many cases those are the majority) so it's closer to a LISA type of cluster rather than a AZP type of cluster...
I would vote for esda
!
I also think it belongs in esda.
Centralizing an implementation would help another package in writing using
what sounds like a similar heuristic! Happy to contrib stuff from my
implementation if that's useful
Sent from Mobile
On Mon, Nov 18, 2019, 14:47 Wei Kang notifications@github.com wrote:
I would vote for esda!
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/pysal/pysal/issues/1144?email_source=notifications&email_token=AARFR47BOTHLD6U73X3RRLLQULWNFA5CNFSM4JOWFCQ2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEELVZWQ#issuecomment-555179226,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AARFR47XIN5KRLEIDNJWUNTQULWNFANCNFSM4JOWFCQQ
.
toward that end, do we have a date scheduled for the next esda release? I'd like to get the geosilhouettes into geosnap
also, should we leave smaup in esda
, or would it make more sense in tobler
?
For the A-DBSCAN, I would vote for putting it in esda.
toward that end, do we have a date scheduled for the next esda release? I'd like to get the geosilhouettes into geosnap
also, should we leave smaup in
esda
, or would it make more sense intobler
?
I think we leave smaup in esda
, unless there is a really pressing case to move it to tobler
. I think it could have wide scope beyond the focus of tobler?
First of all, cool method! I would also vote for esda
. I used esda
and DBSCAN for my urban tree pattern analysis and would find it great if A-DBSCAN is also accessible via esda
, from a users perspective.
Super! I'll prepare a PR and move discussion over there! Thanks everyone for chipping in!!!
I’m a little late, but also vote for ESDA, which worked well as good topic
to introduce DBSCAN when teaching this semester.
On Tue, Nov 19, 2019 at 6:44 AM Dani Arribas-Bel notifications@github.com
wrote:
Super! I'll prepare a PR and move discussion over there! Thanks everyone
for chipping in!!!—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/pysal/pysal/issues/1144?email_source=notifications&email_token=AB553TPTHBUBEKPH2WK4BCDQUPGTDA5CNFSM4JOWFCQ2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEEN5FLI#issuecomment-555471533,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB553TKMLKGCMK6FT6BCV3LQUPGTDANCNFSM4JOWFCQQ
.
OK, I've just opened a PR over at esda#94
with the functionality discussed. I'd probably close this issue and move the discussion over there? (feel free to reopen if needed)
Most helpful comment
I’m a little late, but also vote for ESDA, which worked well as good topic
to introduce DBSCAN when teaching this semester.
On Tue, Nov 19, 2019 at 6:44 AM Dani Arribas-Bel notifications@github.com
wrote: