Well, after playing around with Pandas while reading Fabio Nelli book 'Python Data Analytic', I realize how much Pandas is an awesome library.
SO, i've been working with Anaconda to make it work in my environment.
1- Download the Anaconda installer and install it (I guess miniconda will be enough)
2- Make a local channel by mirroring the (part of) anaconda repository
Do not try to download individual packages on your workstation to push them to your offline server. Indeed, dependencies will not be satisfied.
Packages need to be contained in a channel and indexed in metadata files (repodata.json and repodata.json.bz2) to be properly 'glued' together.
I used wget to mirror a part of the anaconda repository : https://repo.continuum.io/pkgs/
I used something like this to filter out packages in order not to download the whole repo :
wget -r --no-parent -R --regex-type pcre --reject-regex '(.*py2[67].*)|(.*py[34].*)' https://repo.continuum.io/pkgs/free/linux-64/
Beware, not to use something like "only py35" packages. Indeed, many packages in the repo don't have version string in their name; and you'll miss them as dependency.
Well, i guess you can filter more accurately. I fetched about 6GB of packages!
!!!! Do NOT build a custom channel from the part of the repository you just downloaded !!!! (anaconda custom channels)
I tried this at first and i had this exception : "RecursionError: maximum recursion depth exceeded while calling a Python object".
This is a known pb :
https://github.com/conda/conda/issues/2371
==> the maintainers discuss this : the metadatas maintained in repodata.json and repodata.json.bz2 do not reflect metadatas in individual pkg. They choose to only edit the repo metadata to fix issues instead of each package metadatas.
So, if you rebuild the channel metadatas from packages, you miss.
==> So : do not rebuild channel metadata, just keep the repository metadata (repodata.json and repodata.json.bz2 contained in the official anaconda repository).
Even if the whole repo is not in your new channel, it'll work (at least, if you did not filter to much while mirroring ;-) )
3- test and use your new channel
conda search -c file://Path_to_your_channel/repo.continuum.io/pkgs/free/ --override-channels
NOTE : Do not include your platform architecture in the path.
Exemple : your channel tree is probably : /Path_to_your_channel/repo.continuum.io/pkgs/free/linux-64
Just omit your arch (linux-64 in my case). Conda will find out.
Update :
conda update -c file://resto/anaconda_repo/repo.continuum.io/pkgs/free/ --override-channels --all
And so on...
I guess, you can use the conda conf file of your system user to force using this local channel.
Hope it helps.
Guillaume