Open combiz opened 4 years ago
tl;dr
Would be useful if the RANN.L1
package, currently stored in a branch of RANN, could be copied to its own separate repo at jefferislab/RANN.L1
to match the convention of account/packagename expected by various dev packages in R. Would help to avoid issues like the below (produced by r-lib/pkgdepends): -
x Cannot install `MacoskoLab/liger`.
- Cannot install dependency jefferis/RANN@master-L1
Thanks!
@krlmlr you had a strategy for this I think?
In #30, I suggested to re-unify the codebases so that L1 is available from {RANN}. Would that work?
If the master branch of a new repo at jefferis/RANN.L1
could have the contents of the jefferis/RANN@master-L1
branch it would provide a quick fix.
Can we give @krlmlr the option to try and get things working in one package. Having two repos would be a retrograde step when we are trying to rationalise two separate packages.
Sounds like an optimal solution, thanks!
@combiz: For me, remotes::install_github("jefferis/RANN@master-L1")
works, and so should the Remotes:
entry in the package you're referring to. Perhaps the installation failure has a different reason? Could you point me to the failing CI run?
remotes::install_github("jefferis/RANN@master-L1")
works ok locally for me. The issues arise with packages like roxygen2/pak/pkgdepends which seem to expect the R package name and repo name to match (e.g. https://github.com/jefferislab/RANN/issues/31#issuecomment-592227966). e.g.
devtools::install_github("r-lib/pkgdepends")
pd <- new_pkg_deps("MacoskoLab/liger")
pd$solve()
pd$draw()
Error: Cannot install packages:
x Cannot install `MacoskoLab/liger`.
- Cannot install dependency jefferis/RANN@master-L1
Hi friends... thank you for you RANN (and RANN.L1)! I'm curious about use of Lp for p = [ .... drum roll .... ] 1/2.
It looks possible to hotwire the RANN tarball library by commenting out / uncommenting in at that spot in ANN.h and running R CMD SHLIB ... but that would be a first for me, and I ran across this thread and thought I'd ask if "rationalising" (as @jefferis put it) RANN to run ANN with different p value options was in the cards. Thanks again for your contributions! Cheers!
See the ANN manual for metrics that are supported out of the box. Not including 1/2 https://www.cs.umd.edu/~mount/ANN/Files/1.1.2/ANNmanual_1.1.pdf
Right. Yes, I'd seen this ... there's no triangle inequality and hence no "metric" with 0 < p < 1 but the quantities from these "fractional" p distances can still be used to define neighborhoods around query points for ANN search. There's some literature on such fractional distances helping with the curse of dimensionality story in the 20-50 dimension range, hence my curiosity. Cheers!
I'm creating a package which requires "RANN.L1" as a dependency. The package "RANN.L1" is therefore listed under
Imports:
in theDESCRIPTION
file of the package, and the remote dependency location is specified asjefferis/RANN@master-L1
underRemotes:
in the same file. However, as RANN.L1 is a branch of the RANN repo, the package build under Travis CI fails, presumably as it can't associate the "RANN.L1" import with the "RANN" remote. Any suggestions? Having thejefferis/RANN@master-L1
branch as a separate repo underjefferis/RANN.L1
could be a quick fix? Thanks.