Lors de la prise d'un certain Cours d'apprentissage automatique en ligne, [Octave](http: //www.gnu.org/software/octave/ "GNU Octave") a été installé.
Donc, j'ai cherché Jupyter pour le noyau Octave et je l'ai installé. J'étais un peu accro, alors je l'ai enregistré pour le partage d'informations.
Je vérifiais l'opération et j'étais accro à la manipulation du japonais, j'ai donc ajouté et corrigé l'article.
[^ 4]: Le Python principal est 2.7.9, et 3.4.3 est co-installé avec pyenv et le noyau est ajouté pour que les deux fonctionnent. Pour plus de détails, reportez-vous à l'article de l'autre jour (Jupyter Preferences Supplement #pythontokai). [^ 1]: IPython a également été mis à jour, je l'ai donc mis à jour. Ou plutôt ... Voir ↓
Octave semble également pouvoir télécharger et installer le binaire, mais je l'ai installé avec Homebrew. J'ai pu l'installer en utilisant la même procédure, presque indépendante de la version OSX (même si cela prendra du temps).
$ brew update
$ brew tap homebrew/science
$ brew install octave
De plus, Java était déjà dans mon environnement, il n'y avait donc aucun problème à le démarrer.
$ octave --version
GNU Octave, version 3.8.2
Copyright (C) 2014 John W. Eaton and others.
This is free software; see the source code for copying conditions.
There is ABSOLUTELY NO WARRANTY; not even for MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE.
Octave was configured for "x86_64-apple-darwin13.4.0".
Additional information about Octave is available at http://www.octave.org.
Please contribute if you find this software useful.
For more information, visit http://www.octave.org/get-involved.html
Read http://www.octave.org/bugs.html to learn how to submit bug reports.
$
Le noyau Octave de Jupyter est fourni sous forme de package Python (Package Index> octave_kernel), donc pip Vous pouvez l'installer avec la commande
.
En guise de mise en garde, installez-le sur Python3 afin qu'il n'y ait pas de problème de gestion du japonais. </ ins> (détails ci-dessous)
$ pyenv shell 3.4.3
$ pip install pip --upgrade
$ pip install octave_kernel
Plusieurs packages sont installés, y compris les dépendances.
Au fait, si vous faites pip install octave_kernel --upgrade
, il semble qu'il sera mis à jour lorsque les paquets dépendants pourront être mis à jour [^ 3].
[^ 3]: En fait, IPython est passé de 3.1.0 à 3.2.0 et est devenu "Wow" (^ - ^;
Confirmation de l'installation [^ 5]:
ls ~/.pyenv/versions/3.4.3/lib/python3.4/site-packages/ | grep octave_kernel
octave_kernel-0.11.0-py3.4.egg
[^ 5]: Quand je l'ai installé sur Python2.7, je pouvais le vérifier avec ʻimp.find_module ('octave_kernel') `, mais je ne pouvais pas le vérifier avec Python3.4 (on m'a dit que je ne pouvais pas le trouver, (Mystère), donc je vérifie simplement si le fichier existe.
Cette étape est ** essentiellement inutile **. Si l'installation réussit, les paramètres du noyau doivent être définis [^ 2]. Tout d'abord, essayez [3. Vérification du fonctionnement](# 3-% E5% 8B% 95% E4% BD% 9C% E7% A2% BA% E8% AA% 8D) dans la section suivante et dites "Noyau introuvable" Si vous obtenez une erreur à cet effet, effectuez les réglages manuels du noyau suivants.
[^ 2]: Lorsque le noyau est défini automatiquement, il semble que le fichier de configuration soit généré dans / usr / local / share / jupyter / kernels / au lieu de ~ / .ipython / kernels. Les paramètres bash_kernel précédemment installés sont là.
Même si vous dites paramétrage manuel du noyau, tout ce que vous avez à faire est de créer vous-même le fichier kernel.json et de le placer dans un emplacement approprié.
$ cd ~/.ipython/kernels
$ mkdir -p octave_kernel && cd octave_kernel
$ vi kernel.json
kernel.json (exemple):
kernel.json
{
"argv": [
"/path/to/user_home/.pyenv/versions/3.4.3/bin/python",
"-m", "octave_kernel",
"-f", "{connection_file}"
],
"display_name": "Octave",
"language": "octave",
"name": "octave_kernel"
}
Si vous obtenez une erreur indiquant "Kernel not found", consultez la section précédente [2. Paramètres du noyau](# 2-% E3% 82% AB% E3% 83% BC% E3% 83% 8D% E3% 83% AB Revenez à% E3% 81% AE% E8% A8% AD% E5% AE% 9A) et (re) configurez manuellement le noyau.
$ ipython console --kernel=octave_kernel
IPython Console 3.2.0
In [1]: printf("Hello, World!\n")
gnuplot 5.0 patchlevel 0
Out[1]:
Hello, World!
In [2]: #Ctrl pour quitter+D
Do you really want to exit ([y]/n)?
Que diriez-vous de gnuplot fonctionnant alors que je viens d'essayer printf
? Cela ressemble à (^ - ^;
Le noyau a été ajouté correctement:
Confirmation d'affichage facile:
Au fait, le graphique est dessiné en SVG. De plus, la taille est automatiquement ajustée en fonction de la largeur de la cellule. Si vous modifiez la largeur du navigateur, il sera redimensionné en temps réel. En quelque sorte amusant w
Même avec Python2.7.x, octave_kernel peut être installé avec succès, mais il y a eu un problème en raison du fait que le japonais (ou la chaîne de caractères Unicode) n'a pas été géré correctement et une erreur interne s'est produite lors de l'affichage.
J'ai fait un peu de recherche, mais octave_kernel.py ou sa source (qui définit MetaKernel
, qui est une super classe de ʻOctaveKernel`) [MetaKernel](https://pypi.python.org/ pypi / metakernel "metakernel 0.9.0: Python Package Index") Cela semble être un problème du côté [^ 6], donc j'ai arrêté de chasser profondément.
Au lieu de cela, n'est-ce pas correct si String est Python3 intégré à la chaîne Unicode? Quand je l'ai essayé, cela a fonctionné comme prévu. C'était bien de coexister avec l'environnement (^ - ^)
Donc, utilisez Python3 pour utiliser OctaveKernel (et d'autres noyaux basés sur MetaKernel).
En conséquence, j'ai installé octave_kernel une fois avec 2.7.x, puis je l'ai réinstallé avec 3.x, mais le noyau était normalement installé sous (/ usr / local / share / jupyter / kernels). Les paramètres du noyau ont été écrasés normalement (si l'environnement est défini). aucun problème. Si vous le définissez manuellement, vous devez modifier le chemin en conséquence.
[^ 6]: C'est peut-être un problème qui peut être résolu simplement en mettant un commentaire magique (# coding: utf-8
) au début de la source ...
Recommended Posts