Chicago / west-nile-virus-predictions

Algorithm to predict repeated positive results for West Nile Virus for mosquitoes captured in traps across Chicago.
MIT License
14 stars 1 forks source link

Use ROracle instead of RODBC in 10_calculate_idtable.R #30

Closed geneorama closed 7 years ago

geneorama commented 7 years ago

As I was working on automating the predictions, I realized that the data/10_calculate_idtable.Rds is a dependency that I had copied onto the server from my local computer. This trap data get updated in 2017, so I'll need to update it along with the NOAA and WNV data in the chron job.

So, I'll update the R/10_calculate_idtable.R script that generates the data to download the data from Oracle using ROracle.

geneorama commented 7 years ago

Now I remember why I never got this script running in the first place.

I got the ROracle part fixed pretty quickly, but a few lines down the script chokes on the stateplane2latlon function which depends on rgdal.

For some reason rgdal won't install. At the end of the build it complains that libgdal.so.20 is missing.

** building package indices
** installing vignettes
** testing if installed package can be loaded
Error in dyn.load(file, DLLpath = DLLpath, ...) :
  unable to load shared object '/home/375492/R/x86_64-redhat-linux-gnu-library/3.3/rgdal/libs/rgdal.so':
  libgdal.so.20: cannot open shared object file: No such file or directory
Error: loading failed
Execution halted
ERROR: loading failed
* removing ‘/home/375492/R/x86_64-redhat-linux-gnu-library/3.3/rgdal’

In fact, libgdal.so.20 is not missing, it's located in /usr/local/lib/

$ locate libgdal.so.20
/usr/local/lib/libgdal.so.20
/usr/local/lib/libgdal.so.20.1.0

However if I add that to the path, I get the same error.

$ PATH=/usr/local/lib/:$PATH
$ echo $PATH
/usr/local/lib/:/app/Anaconda/bin:/usr/local/rvm/gems/ruby-2.0.0-p648/bin:/usr/local/rvm/gems/ruby-2.0.0-p648@global/bin:/usr/local/rvm/rubies/ruby-2.0.0-p648/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/lib/oracle/12.1/client64/bin:/usr/local/rvm/bin:/home/375492/bin

I even confirmed that the path was being correctly imported into R:

> Sys.getenv()['PATH']
PATH                    /usr/local/lib/:/app/Anaconda/bin:/usr/local/rvm/gems/ruby-2.0.0-p648/bin:/usr/local/rvm/gems/ruby-2.0.0-p648@global/bin:/usr/local/rvm/rubies/ruby-2.0.0-p648/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/lib/oracle/12.1/client64/bin:/usr/local/rvm/bin:/home/375492/bin

I'm not sure how to fix this.

geneorama commented 7 years ago

After looking at several notes and SO answers, I think that installing libgdal1-dev and libproj-dev might solve the problem.

geneorama commented 7 years ago

Looking into using chigeocodR instead, but I'm having a hard time installing the package because I didn't set up a password for gitlab because we were only using ssh (or maybe I set one up and don't remember it). @nicklucius is helping.

geneorama commented 7 years ago

Got chigeocodR installed, but realized that I'm not doing the ward / community area geocoding anymore anyway. I still need rgdal to do the lat / lon to state plane conversion, and I'll work with unisys on that.

tomschenkjr commented 7 years ago

See #21, has been resolved, closing now.