Change Jupyter notebook working directory - python

When I open the notebook e.g. at home home / user / Desktop / multifit-master / notebooks / CLS-DE.ipynb.
And then type in the notebook (CLS-DE.ipynb) %cd I get:
home/user
Shouldn't this be the directory where I opened my notebook? It means :
home / user / Desktop / multifit-master / notebooks / CLS-DE.ipynb
How to make a notebook in the directory where I open it?
I want to see after typing %cd in CLS-DE.ipynb notebook this directory:
home / user / Desktop / multifit-master / notebooks / CLS-DE.ipynb

To answer your first question, %cd executes shell command cd, which means "go to home directory". Your home directory is /home/user.
If you want to change where jupyter saves notebooks:
Define it when starting jupyter jupyter notebook --notebook-dir=home/user/Desktop/multifit-master/notebooks for Jupyter or jupyter-lab --notebook-dir=home/user/Desktop/multifit-master/notebooks for JupyterLab.
Switch to the required directory before starting jupyter.
To get what you want, i.e. "I want to see after typing %cd in CLS-DE.ipynb notebook this directory", you'd have to change HOME environment variable. I'd never go this way, as number of tools, scripts, libraries etc. might refer to you HOME. Changing it is likely to bring unforeseen consequences, with little benefit.

option 1 :
open terminal, change path where ever you want to and then open jupyter notebook
via terminal.
jupyter notebook
Option 2 :
u can use os.chdir

In the terminal use cd to go in to the respective directory. Once there, type "jupyter notebook" in the terminal. This should open the notebook in that directory.
And to make sure that the notebook is open in the directory you wanted, type "%pwd". It means "print working directory".

Related

Can't open a windows network location in my homegroup from JupyterLab

i am trying to open a jupyter notebook saved on another machine.
That machine is on the same windows homegroup, i can access and modify it's files easily using the windows explorer.
But i can't find a way to make JupyterLab recognize the adress correctly.
For example the jupyter notebooks i want are located on the user AGUXSURFACEA, so in explorer i can type \AGUXSURFACEA and i can access the files.
I cannot use this path at all in JupyterLab, when i click on "Open from path" i never imagine an adress that could make it work.
Sublimetext on the other hand (i know is a text editor has nothing to do) can recognize this kind of adress.
I would apreciate any help.
SOLUTION:
Found a solution. Made a vbs script to simultaneously mount the network path to a drive letter, and then opening jupyter lab.
Set oShell = CreateObject("WScript.Shell")
Command = "cmd /K net use M: \\AGUXSURFACEA\Programacion & cd /d M:\ & Dir & jupyter lab"
oShell.Run Command,0,True
The command "net use" will mount the network path you want, i assigned the letter M to it on this case, you can assign the letter you want.

Edit the Jupyter terminal's starting directory

when I launch a Jupyter notebook (which I installed through Anaconda), the explorer opens in C:\Users\Joe
However, when I open a terminal (New -> Terminal) it opens in C:\Users\Joe\Documents
Is it possible to change the starting directory of the terminal, so it matches the notebook explorer page?
I have already tried the following:
1) edit the 'Start in' field in windows PowerShell properties to my desired location. This didn't change anything - it's as if when jupyter opens the terminal it overrides this - though it seems to use PowerShell.
2) running jupyter notebook –generate-config, and inserting my desired path to c.NotebookApp.notebook_dir = "".
Any advice would be appreciated, thank you!
Resolved this myself - found the answer here:
Find the default local Jupyter directory
In the Anconda3 folder there is a file cwp.py, which determines where the working directory should be changed to. I commented out lines 26-30:
if exception:
documents_folder, exception = get_folder_path(FOLDERID.PublicDocuments)
if not exception:
os.chdir(documents_folder)
and the path in the terminal is no longer being modified.

Folders visible when opening jupyter notebooks

When I open Jupyter Notebooks, I see all of the folders under "Owner" on my computer (including My Documents, My Pictures, etc). I wanted to see if there was any way that I could install Anaconda or use Jupyter notebooks so that these folders are not seen. Having all of those folders clutters the screen, I just want folders for my datasets and notebooks.
In addition, when I open it in localhost and I see these folders (My Documents, My Pictures).
Does this mean that these files are copied onto python's servers? Or would it only be accessible from my computer?
If someone is a complete newbie to using Jupyter Notebook, like me, then here's the elaboration to Yasin Yousif and ALollz comments:
Open Jupyter Notebook which results in the Juyter Dashboard.
Open new terminal from here.
This is where the solutions suggested by Yasin Yousif and ALollz need to be implemented:
You can change the default directory of Jupyter Notebook.
Go to .jupyter folder. It's usually in <USER NAME>/.jupyter
Open the config file jupyter_notebook_config.py in a text editor
If the file was missing, create it first by running the command:
jupyter notebook --generate-config
Change it at:
c.NotebookApp.notebook_dir = 'D:/'

jupyter notebook starting directory

I'm trying to set a custom starting directory in Jupyter Notebook. I have edited jupyter_notebook_config.py.
Removed # from line "c.NotebookApp.notebook_dir =", added parameter:
c.NotebookApp.notebook_dir = u'c:\\my\\chosen\\directory'.
But still doesn't work, console coming up with error, and jupyter starting in the default home directory.
I'm using Windows server 2008. According to the manuals, it should work.
Does anyone have a suggestion about my problem?
The followings steps work perfectly for me on Windows:
First find which directory Jupyter is looking in for your config file:
jupyter --config-dir
If there is no jupyter_notebook_config.py file in that directory, generate one by typing:
jupyter notebook --generate-config
Then edit the jupyter_notebook_config.py file and add something like:
## The directory to use for notebooks and kernels.
c.NotebookApp.notebook_dir = 'c:\\users\\rsignell\\documents\\github'
Then start your jupyter notebook from any directory:
jupyter notebook
and it will start in the directory you specified.
For more info see: http://jupyter-notebook.readthedocs.io/en/latest/config.html
Microsoft Windows
Open dos command line by typing cmd on windows explorer address bar. This will open command prompt with current path set to current folder. Type jupyter notebook --notebook-dir=%CD% on commandline to start jupyter notebook (ipython notebook) with current directory as notebook's starting directory
I also had the problem, and editing jupyter configuration file didn't work either.
My workaround is to make a batch file that goes to a specified directory, then start jupyter notebook from that directory.
You can use notepad to write the batch file, just save it as an all files and specify the extension as .bat
An easy way is also available from DOS prompt using copy con. First, access command prompt (usually by typing "cmd" and enter). Then:
copy con startjupyter.bat
after that you can specify your directory and start notebook from there, for example if your directory is D:\python_codes :
d:
cd python_codes
jupyter notebook
After that, save the file using CTRL+Z and Enter.
You can run the batch file by calling the name (startjupyter), or click it. For the latter, maybe put it in your desktop for easy access.
I had also problems with the solutions given here. My solution was quick and dirty then, but it works with Windows. I made a batch-file:
cd C:\[starting Directory]
jupyter notebook
stop
You can start Jupyter with a defined directory when you use different batch-files. For example:
cd C:\datascience
or
cd C:\browsergame

How to run IPython Notebooks stored at any location

I know that the IPython Notebook expects to have a notebook directory and that this can be set at startup with --notebook-dir. But is it possible to run a notebook stored at any location without first importing/copying it to this directory?
Start another server if you are using 1.0/1.1. this will be solved in 2.0 that allow you to browse your hard-drive.

Categories