How do I make the R kernel available to jupyter? - r

I have read multiple articles along this line, but they all use conda to install R. I am not using conda; I have Windows Subsystem for Linux installed. I was successfully able to install Python, create a virtual environment, and install and run jupyter notebook in that virtual environment.
I installed R in WSL, then activated my virtual environment and ran R with "sudo R" because I was getting a permissions issue. I was able to install IRkernel, but I get an error when I run this:
IRkernel::installspec(user=FALSE)
The error message is: "jupyter-client has to be installed but 'jupyter kernelspec --version' exited with code 127".
I thought it might be a path error, so I used this:
Sys.setenv(PATH="everything from getenv:/path-to-virtual-env/bin")
Tried using installspec again but got the same 127 error.
I'm concerned that it might be because of where I put my virtual environment. To access your files on Windows from within WSL, you have to go to "/mnt/c/Users/your-username/". That's where my virtual environment is, and I'm wondering if that's why R can't see it even when I explicitly tell R where it is. Any help is appreciated.

Related

Has anyone been able to successfully run julia on a Jupyter notebook over ssh?

I've had so much trouble trying to install Julia and learn how to use it with jupyter over ssh (ssh for reasons that are to complicated to explain). I am unable to even install IJulia without error. I've followed steps from here and several other places with no luck. When I initially run Pkg.add("IJulia") it's able to install the dependencies but IJulia itself doesn't compile. I try running Pkg.build("IJulia") with no issue, but when I open a julia notebook, the kernel never actually runs. When I try to go back to the julia prompt and run using IJulia, I get errors like the following:
ERROR: LoadError: InitError: SystemError: opening file "[blabla]/mambaforge/envs/jul/share/julia/cert.pem": No such file or directory
and
ERROR: Failed to precompile IJulia [7073ff75-c697-5162-941a-fcdaad2a7d2a] to [blabla]/mambaforge/envs/jul/share/julia/compiled/v1.7/IJulia/jl_yfN9Cx.
I've been suffering this for weeks. I feel like it shouldn't be this difficult to get into this language. Has anyone else had issues like this and been able to solve them?
Are you using Ubuntu? I encountered a similar problem in Ubuntu 20.04 recently. I wanted to install IJulia under an anaconda environment but faced the problem that the file {JULIA_DIR}/share/julia/cert.pem (in my case, this file has a path of /home/pc/anaconda3/envs/julia-workspace/share/julia/cert.pem).
The first reference I find on the internet is a solution on the julia discourse. (Actually there is a mistake in this answer, at least on my operation system, that the file that the symbolic link is created from, is /etc/ssl/certs/ca-certificates.crt , not /etc/ssl/certs/ca-certificates.crt )
The problem I faced at this time is that the file /etc/ssl/certs/ca-certificates.crt does not exist! How can it happens? I find this reference that guides me to generate the file ca-certificates.crt (by the way, you may need sudo to run the command update-ca-certificates, which updates the directory /etc/ssl/certs to hold SSL certificates and generates ca-certificates.crt)

Differences between various consoles in Python

I am trying to make run a script for webscraping. However, I feel the problem could be that I keep running the written script in the wrong console.
So far I could not really understand the differences between the consoles cmd and Anaconda Prompt. Anaconda Navigator looks rather like an administrative tool, but it seems still to make a difference for my code whether I use a terminal from there or not. Could anyone elaborate on that?
Much appreciated
cmd: command-prompt, that used to run our python script, especially for scripts with .py extension. Besides that, we can used to install python library
Anaconda Prompt: almost similar to cmd. But usually we used to open jupyter notebook or other console on Anaconda Navigator.
Anaconda Navigator: a GUI desktop application that is included in the Anaconda installation package. Through Anaconda Navigator, programmers can easily run and manage Conda packages, environments and channels without the need to use command prompt commands. Anaconda Navigator can search for packages in the anaconda cloud repository.
So, the difference depends on what we want to do. You can't judge the problem arises because of the wrong console. It depends on the error message that appears.
Suggestion: read the error message, and analyze or find a way to solve the problem

Launch rstudio-server from terminal linux

I'm an Ubuntu user and I used to work with the standard version of Rstudio on my computer. After reading about the server version I installed it on my PC and I'm working with it now. Although I'm very happy with rstudio-server version, I have been facing some difficulties to keep with some old practices. Particularly, I use to launch, open and create new files from the terminal using rstudio keyword - I'm specially fond to the possibility of open files in current rstudio session through the terminal window within rstudio. However, I cannot figure out which command is equivalent in rstudio-server.
I tried, without success, the following commands:
rstudio-server
and
r-server
Interestingly, when I type which rstudio (to find the path of the program's binary files), the terminal did not return any results. The program is installed and working normally, but I just can't find it on my PC
Any help will be appreciated

Correct workflow? - Distributable environment including jupyter notebook

I am developing applications that use Jupyter notebook and ipywidgets for a GUI frontend to a backend codebase. I have run into issues distributing/installing packages in the normal way, such as:
unexpected differences between required library versions (e.g. pandas)
requirements.txt forcing an update to more recent version of a library when the user maintains and uses their own codebase on an older version of that library.
I think pipenv might be able to solve this problem, but I want to check I have a correct usage before going too far down this path.
Requirements:
the user needs to be able to restart Jupyter Notebook in the same env multiple times, running the program from scratch, until a new version is available.
Users are all on Mac.
Any installation should not alter site-packages etc, have no effect on the python setup any user currently has.
Workflow concept
Development:
Develop within a pipenv environment (I use Pycharm so this is relatively straightforward).
Include jupyter in Pipfile [requires], even though jupyter is not imported anywhere in my source.
Use pipenv install new_package as and when new packages are required by my codebase, and maintain the Pipfile (respecting --dev for testing packages etc).
User installation
Produce a zip file containing source code, setup.py etc plus Pipfile and Pipfile.lock.
User extracts the zip file to a known location on their machine.
In terminal, navigate to the unzipped folder location, and run pipenv install.
Use:
In terminal, navigate to the folder location, and run pipenv shell
Run pipenv run jupyter notebook to reload the env and notebook.
When finished, close out of notebook and run exit to close the env.
Uninstall env and upgrade to newer version
In terminal, navigate to the folder location, and run pipenv --rm.
Download new source zip and follow steps above.
If I've understood, this should ensure anyone can use the distribution in a tightly controlled environment, without making any alterations to their existing python install? Have I overcomplicated things?

RStudio not reading system variables when started via launcher

I'm having a few problems with system environment variables with RStudio. In ~/.bashrc some custom environment variables are set which I want to access in my program using Sys.getenv().
When I'm calling Rstudio from the command line, this works fine. However, when I'm using the Ubuntu launch function (Alt+F2) to start RStudio, my environment variables are not found. For portability, I would kind of prefer for this to work, too...
Can someone help?
You need to find Rstudio's desktop launcher. In Ubuntu, launchers are simple text files with the extension .desktop. You can read more about the file format here. The most common locations for these are /home/user/.local/share/applications (user-specific) and /usr/local/share/applications (system-wide). The easiest way to edit these files is to use an app called menulibre.
You can install menulibre by running the following command in the terminal:
sudo apt-get update && sudo apt-get install menulibre
You can then use menulibre to find and edit the Rstudio launcher.
I have just tried using Sys.getenv() on my Rstudio installation, and it works fine. My Rstudio launcher command is /usr/lib/rstudio/bin/rstudio %F
Edit: I am running Rstudio Version 0.99.491

Resources