木村/Memo
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
[[木村]]~
[[木村/Research Subject]]~
[[木村/Meeting]]~
*Index of Tables(Memo) [#m0a2c3ff]
#contents
**HomeBrew [#i151cc56]
HomeBrewはMacOSに提供されているアプリケーション&color(red...
インストールするパッケージと依存関係にある必要なものを自...
また,アンインストールの際に不要なゴミを残さずにクリーン...
MacOSを使用している人にオススメのツールです.~
~
+HomeBrew インストール~
~
ターミナルを起動し,以下のコマンドを実行します.~
$ /bin/bash -c "$(curl -fsSL https://raw.githubuserconte...
実行すると途中で,
Press RETURN to continue or any other key to abort
と表示されるのでEnterを押します.~
その後,パスワードが要求されるので,自分のアカウントのパ...
しばらくするとHomeBrewのインストールが完了します.~
~
+HomeBrewのチェック(飛ばしても大丈夫)
$ brew doctor
Your system is ready to brew.
と表示されればOK.~
もし,Worningが出ても対処コマンドが表示されるので,そのコ...
~
+HomeBrewの更新
$ brew update
Already up-to-date.
HomeBrewの更新はこまめに行いましょう.~
~
+インストール済みパッケージの確認・アンインストール~
~
以下のコマンドを実行すると,インストール済みのパッケージ...
& brew list
また,パッケージのアンインストールは,
$ brew uninstall 'パッケージ名'
で実行できます.~
~
***Pythonの開発環境構築(pyenv) [#t21f3689]
+pyenvのインストール~
~
pyenvはHomeBrewを使ってインストールしましょう.コマンドは...
$ brew install pyenv
実行後は,パスを通すために以下のプロファイル書き換えのコ...
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
$ exec $SHELL -l
~
※&color(red){注意事項:Mac OS Catalina以降は,シェルがbas...
$ echo 'eval "$(pyenv init -)"' >> ~/.zshrc
$ zsh -l
+Python(Anaconda)のインストール~
~
以下のコマンドでインストール可能なバージョンが表示されま...
$ pyenv install -l
自分の構築したい開発環境に応じてインストールするバージョ...
※&color(red){Python2系はMacOSに標準インストールされてい...
~
今回は,Python3系のインストールを紹介します.~
Python3系をインストールしたい場合は,anaconda3-x.x.xのい...
$ pyenv install anaconda3-x.x.x
$ pyenv global anaconda3-x.x.x
globalは開発環境の変更宣言です.これでPython3系が利用で...
※&color(blue){ディレクトリごとに開発環境を変えるlocalもあ...
~
+Pythonのバージョン確認~
~
以下のコマンドでインストールされているPythonのバージョン...
$ pyenv versions
+Jupyter Notebook・Jupyter Labの利用(Labの推奨)
$ jupyter notebook
あるいは,
$ jupyter lab
をターミナルで実行することによりそれぞれ起動することがで...
現在,Notebookの開発は行われておらず,Labの開発が進められ...
なので,&color(red){Jupyter Labの利用を推奨します.};~
~
control + cを押すと,
Shutdown this notebook server (y/[n])?
と表示されるので,yを入力しEnterを押すと元のシェルに戻り...
***JDKのインストール [#m46c3d01]
+Javaの過去のバージョンをインストールするために,まずhome...
$ brew tap homebrew/cask-versions
~
+Javaのインストール~
~
Java(最新のバージョン:2019年7月5日現在の最新バージョン...
$ brew cask install java
Java 11
$ brew cask install java11
Java 8(ライセンスの関係上インストールできないので違うも...
$ brew cask install adoptopenjdk8
または,
$ brew cask install corretto8
~
+インストール済みのJDKの確認
$ /usr/libexec/java_home -V
Matching Java Virtual Machines (3):
12.0.1, x86_64: "OpenJDK 12.0.1" /Library/Java/Ja...
11.0.2, x86_64: "OpenJDK 11.0.2" /Library/Java/Ja...
1.8.0_212, x86_64: "AdoptOpenJDK 8" /Library/Jav...
/Library/Java/JavaVirtualMachines/openjdk-12.0.1.jdk/Con...
$ /usr/libexec/java_home --help
Usage: java_home [options...]
Returns the path to a Java home directory from the c...
Options:
[-v/--version <version>] Filter Java version...
[-a/--arch <architecture>] Filter JVMs matchin...
[-d/--datamodel <datamodel>] Filter JVMs capable...
[-t/--task <task>] Use the JVM list fo...
[-F/--failfast] Fail when filters r...
[ --exec <command> ...] Execute the $JAVA_H...
[-R/--request] Request installatio...
[-X/--xml] Print full JVM list...
[-V/--verbose] Print full JVM list...
[-h/--help] This usage informat...
~
+JDKの切り替え~
~
Java SE 12
$ export JAVA_HOME=`/usr/libexec/java_home -v "12"`
$ PATH=${JAVA_HOME}/bin:${PATH}
Java SE 11
$ export JAVA_HOME=`/usr/libexec/java_home -v "11"`
$ PATH=${JAVA_HOME}/bin:${PATH}
Java SE 8
$ export JAVA_HOME=`/usr/libexec/java_home -v "1.8"`
$ PATH=${JAVA_HOME}/bin:${PATH}
~
***Julia [#we6af7c7]
+Juliaのインストール~
~HomeBrewでJuliaをインストールするには以下のコマンドを実...
brew cask install julia
~
+IJuliaのインストール~
IJuliaはJupyter Notebook・Jupyter LabでJuliaを扱うために...
始めに,Juliaのコンソールを起動します.
$ Julia
_
_ _ _(_)_ | Documentation: https://docs.ju...
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pk...
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.1.1 (2019-05-16)
_/ |\__'_|_|_|\__'_| | Official https://julialang.org...
|__/ |
julia>
起動すると上記の画面になります.~
次に,パッケージインストールを行うためにPkgをインポートし...
julia>using Pkg
PkgはPythonでいうpipと似た役割を持ちます.~
Pkgをインポートしたら,次にIJuliaをインストールします.
julia>Pkg.add("IJulia")
インストールが終われば,IJuliaをビルドします.
julia>using IJulia
Jupyterを起動しJuliaの選択画面が増えていれば完了です.~
**Google Colaboratory [#x5502791]
-GPUを使用しながらPythonができるらしいぞ!!!
--https://cpp-learning.com/python_colaboratory/
--https://qiita.com/tomo_makes/items/b3c60b10f7b25a0a5935
-&color(red){※スワップ領域が存在しないので大規模データの...
**MySQL [#ve476589]
-MySQL 逆引きリファレンス(わからないことはここに書いてる...
--http://mysql.javarou.com
-MySQL コマンド・操作方法など(こっちの方が強そう)
--https://www.dbonline.jp/mysql/
-MySQL データ削除の際に気をつけること(TRUNCATEを使用すれ...
--https://qiita.com/hmatsu47/items/a779213a71c3c1f72763
-MySQL フラグメンテーションの確認とその解消方法
--https://yohei-a.hatenablog.jp/entry/20180610/1528650004
-MySQL データの自己結合方法
--https://www.dbonline.jp/mysql/select/index17.html
**Python [#ea16b212]
***PythonからMySQLへのアクセス [#v7bbf32e]
MONSTER-HYのDocker MySQLに構築されているデータベース「SOT...
~
-使用するために,今回mysql-connector-pythonを使用していま...
インストールしていない場合は以下のコマンドを実行してイン...
$ pip install mysql-connector-python
データベースのコンフィグスクリプト [&attachref(MySQLConf...
MySQLからデータ取得を簡単にしたスクリプト [&attachref(Re...
※''ダメダメスクリプトなので改良してください.''~
~
-上記の2つのスクリプトは同じディレクトリに保存してくださ...
--%%MySQLConfig.pyのsshの接続設定に関して,ポートは3306で...
--MySQLConfig.pyのsshの接続設定に関して,ポートは4309に変...
--ポートフォワーディングをする際は,ローカルポートを4309...
--ローカルポートはご自分で変えていただいて大丈夫です.~
-%%RedirectQuery.pyを実行するとデータベース接続のパスワー...
%%パスワードはいつもの魚釣りのやつです.%%
--追記:getpassだと接続が不安定だったため辞めました.~
~
-サンプルではinput()を用いてSQLクエリを入力するようにして...
ループ処理を用いたプログラムなど,具体的な処理は目的に応...
~
-学外からの利用も可能です.学外利用の場合,事前にSSHの設...
設定については[[データベース用サーバ(MONSTER-HY)の利用方...
***可視化ライブラリ Dash [#l124ac03]
まずはDashをインストールしましょう.
$ pip install dash
簡単なサンプルコードを記述したファイル [&attachref(app.py...
$ python app.py
で実行すると,
Running on http://127.0.0.1:8050/
Debugger PIN: xxx-xxx-xxx
と表示されるので,ブラウザで「http://127.0.0.1:8050/」に...
~
Dashではその他にも様々な機能があります.(テキストフォー...
※&color(blue){多機能};すぎて習得が少し難しいですが,使え...
~
自分はコールバック機能まではなんとか理解しましたので,も...
さらに詳しく知りたい場合は,下のURLにある公式ドキュメント...
-https://qiita.com/OgawaHideyuki/items/6df65fbbc688f52eb82c
-https://dash.plot.ly
-https://plot.ly/python/reference/ (グラフのパラメータな...
***Pandas [#dcabcb1f]
-csvファイルで書き出すときに文字化けしないためのエンコー...
DataFrame.to_csv('ファイル名', encoding = 'utf_8_sig')
***PythonでPDF→テキスト→エクセルに変換 [#uf73648c]
処理の流れ
+Apache Tika(tiki-python)を用いてテキスト変換~
※ファイル名が長すぎるとエラーが起きる
+正規表現を用いてパターン検出,一文判定,文の連結
***other [#gfd8452c]
-JupyterLabでのDash利用ライブラリ(使い方がよくわからんの...
--https://github.com/plotly/jupyterlab-dash
--ライブラリにバグがあるのでおそらく使えません...
-python コードの書き方(参考に)
--https://qiita.com/yinawekuky/items/28d973a653e9825ed582
-JupyterLab おしゃれなプログレスバー
--https://qiita.com/dialectic4th/items/368877009f15b6b551ff
-python 機械学習の環境構築
--https://takaxtech.com/2018/10/09/article266/
-python 深層学習ライブラリKeras 公式ドキュメント
--https://keras.io/ja/
-dask サイズの大きいファイルを読み込むときに使える
--使い方はpandasと同様の使用方法で,処理実行にはcompute()...
--https://qiita.com/kodai_sudo/items/c2ff1e85da18eaf13b65
-pandas pickleファイルも使用可能
-python 複数の配列の共通要素を抽出する(配列2,3の共通要...
[配列1] = set([配列2]) & set([配列3])
**データ分析と [#nd0ecaab]
-文書の意味的類似度(Doc2Vec)
--https://deepage.net/machine_learning/2017/01/08/doc2vec...
-レコメンド精度の評価指標
--http://blog.brainpad.co.jp/entry/2017/08/25/140000
***基礎知識一覧掲載ページ [#kfaf92aa]
-統計学
--https://www.albert2005.co.jp/knowledge/statistics_analy...
-クラスター分析
--https://www.albert2005.co.jp/knowledge/data_mining
-機械学習
--https://www.albert2005.co.jp/knowledge/machine_learning
***機械学習 [#z76ae859]
-アクティブラーニング
**Other [#f14dd3dd]
-pip アップデートコマンドとその他諸々
--https://qiita.com/HyunwookPark/items/242a8ceea656416b6da8
***Mac ショートカットキー [#d95fa86c]
-command + shift + G:ファイルパス検索
-command + Q:アプリケーションの終了
-command + R:リロード
-command + H:ウィンドウを隠す
-control + D(もしくは,fn + delete):WindowsでいうDelet...
-control + K:カーソル右側文字の全削除
-control + A:カーソルを行頭に移動
-command + shift + 3:全画面スクショ
-command + shift + 4:選択範囲スクショ
終了行:
[[木村]]~
[[木村/Research Subject]]~
[[木村/Meeting]]~
*Index of Tables(Memo) [#m0a2c3ff]
#contents
**HomeBrew [#i151cc56]
HomeBrewはMacOSに提供されているアプリケーション&color(red...
インストールするパッケージと依存関係にある必要なものを自...
また,アンインストールの際に不要なゴミを残さずにクリーン...
MacOSを使用している人にオススメのツールです.~
~
+HomeBrew インストール~
~
ターミナルを起動し,以下のコマンドを実行します.~
$ /bin/bash -c "$(curl -fsSL https://raw.githubuserconte...
実行すると途中で,
Press RETURN to continue or any other key to abort
と表示されるのでEnterを押します.~
その後,パスワードが要求されるので,自分のアカウントのパ...
しばらくするとHomeBrewのインストールが完了します.~
~
+HomeBrewのチェック(飛ばしても大丈夫)
$ brew doctor
Your system is ready to brew.
と表示されればOK.~
もし,Worningが出ても対処コマンドが表示されるので,そのコ...
~
+HomeBrewの更新
$ brew update
Already up-to-date.
HomeBrewの更新はこまめに行いましょう.~
~
+インストール済みパッケージの確認・アンインストール~
~
以下のコマンドを実行すると,インストール済みのパッケージ...
& brew list
また,パッケージのアンインストールは,
$ brew uninstall 'パッケージ名'
で実行できます.~
~
***Pythonの開発環境構築(pyenv) [#t21f3689]
+pyenvのインストール~
~
pyenvはHomeBrewを使ってインストールしましょう.コマンドは...
$ brew install pyenv
実行後は,パスを通すために以下のプロファイル書き換えのコ...
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
$ exec $SHELL -l
~
※&color(red){注意事項:Mac OS Catalina以降は,シェルがbas...
$ echo 'eval "$(pyenv init -)"' >> ~/.zshrc
$ zsh -l
+Python(Anaconda)のインストール~
~
以下のコマンドでインストール可能なバージョンが表示されま...
$ pyenv install -l
自分の構築したい開発環境に応じてインストールするバージョ...
※&color(red){Python2系はMacOSに標準インストールされてい...
~
今回は,Python3系のインストールを紹介します.~
Python3系をインストールしたい場合は,anaconda3-x.x.xのい...
$ pyenv install anaconda3-x.x.x
$ pyenv global anaconda3-x.x.x
globalは開発環境の変更宣言です.これでPython3系が利用で...
※&color(blue){ディレクトリごとに開発環境を変えるlocalもあ...
~
+Pythonのバージョン確認~
~
以下のコマンドでインストールされているPythonのバージョン...
$ pyenv versions
+Jupyter Notebook・Jupyter Labの利用(Labの推奨)
$ jupyter notebook
あるいは,
$ jupyter lab
をターミナルで実行することによりそれぞれ起動することがで...
現在,Notebookの開発は行われておらず,Labの開発が進められ...
なので,&color(red){Jupyter Labの利用を推奨します.};~
~
control + cを押すと,
Shutdown this notebook server (y/[n])?
と表示されるので,yを入力しEnterを押すと元のシェルに戻り...
***JDKのインストール [#m46c3d01]
+Javaの過去のバージョンをインストールするために,まずhome...
$ brew tap homebrew/cask-versions
~
+Javaのインストール~
~
Java(最新のバージョン:2019年7月5日現在の最新バージョン...
$ brew cask install java
Java 11
$ brew cask install java11
Java 8(ライセンスの関係上インストールできないので違うも...
$ brew cask install adoptopenjdk8
または,
$ brew cask install corretto8
~
+インストール済みのJDKの確認
$ /usr/libexec/java_home -V
Matching Java Virtual Machines (3):
12.0.1, x86_64: "OpenJDK 12.0.1" /Library/Java/Ja...
11.0.2, x86_64: "OpenJDK 11.0.2" /Library/Java/Ja...
1.8.0_212, x86_64: "AdoptOpenJDK 8" /Library/Jav...
/Library/Java/JavaVirtualMachines/openjdk-12.0.1.jdk/Con...
$ /usr/libexec/java_home --help
Usage: java_home [options...]
Returns the path to a Java home directory from the c...
Options:
[-v/--version <version>] Filter Java version...
[-a/--arch <architecture>] Filter JVMs matchin...
[-d/--datamodel <datamodel>] Filter JVMs capable...
[-t/--task <task>] Use the JVM list fo...
[-F/--failfast] Fail when filters r...
[ --exec <command> ...] Execute the $JAVA_H...
[-R/--request] Request installatio...
[-X/--xml] Print full JVM list...
[-V/--verbose] Print full JVM list...
[-h/--help] This usage informat...
~
+JDKの切り替え~
~
Java SE 12
$ export JAVA_HOME=`/usr/libexec/java_home -v "12"`
$ PATH=${JAVA_HOME}/bin:${PATH}
Java SE 11
$ export JAVA_HOME=`/usr/libexec/java_home -v "11"`
$ PATH=${JAVA_HOME}/bin:${PATH}
Java SE 8
$ export JAVA_HOME=`/usr/libexec/java_home -v "1.8"`
$ PATH=${JAVA_HOME}/bin:${PATH}
~
***Julia [#we6af7c7]
+Juliaのインストール~
~HomeBrewでJuliaをインストールするには以下のコマンドを実...
brew cask install julia
~
+IJuliaのインストール~
IJuliaはJupyter Notebook・Jupyter LabでJuliaを扱うために...
始めに,Juliaのコンソールを起動します.
$ Julia
_
_ _ _(_)_ | Documentation: https://docs.ju...
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pk...
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.1.1 (2019-05-16)
_/ |\__'_|_|_|\__'_| | Official https://julialang.org...
|__/ |
julia>
起動すると上記の画面になります.~
次に,パッケージインストールを行うためにPkgをインポートし...
julia>using Pkg
PkgはPythonでいうpipと似た役割を持ちます.~
Pkgをインポートしたら,次にIJuliaをインストールします.
julia>Pkg.add("IJulia")
インストールが終われば,IJuliaをビルドします.
julia>using IJulia
Jupyterを起動しJuliaの選択画面が増えていれば完了です.~
**Google Colaboratory [#x5502791]
-GPUを使用しながらPythonができるらしいぞ!!!
--https://cpp-learning.com/python_colaboratory/
--https://qiita.com/tomo_makes/items/b3c60b10f7b25a0a5935
-&color(red){※スワップ領域が存在しないので大規模データの...
**MySQL [#ve476589]
-MySQL 逆引きリファレンス(わからないことはここに書いてる...
--http://mysql.javarou.com
-MySQL コマンド・操作方法など(こっちの方が強そう)
--https://www.dbonline.jp/mysql/
-MySQL データ削除の際に気をつけること(TRUNCATEを使用すれ...
--https://qiita.com/hmatsu47/items/a779213a71c3c1f72763
-MySQL フラグメンテーションの確認とその解消方法
--https://yohei-a.hatenablog.jp/entry/20180610/1528650004
-MySQL データの自己結合方法
--https://www.dbonline.jp/mysql/select/index17.html
**Python [#ea16b212]
***PythonからMySQLへのアクセス [#v7bbf32e]
MONSTER-HYのDocker MySQLに構築されているデータベース「SOT...
~
-使用するために,今回mysql-connector-pythonを使用していま...
インストールしていない場合は以下のコマンドを実行してイン...
$ pip install mysql-connector-python
データベースのコンフィグスクリプト [&attachref(MySQLConf...
MySQLからデータ取得を簡単にしたスクリプト [&attachref(Re...
※''ダメダメスクリプトなので改良してください.''~
~
-上記の2つのスクリプトは同じディレクトリに保存してくださ...
--%%MySQLConfig.pyのsshの接続設定に関して,ポートは3306で...
--MySQLConfig.pyのsshの接続設定に関して,ポートは4309に変...
--ポートフォワーディングをする際は,ローカルポートを4309...
--ローカルポートはご自分で変えていただいて大丈夫です.~
-%%RedirectQuery.pyを実行するとデータベース接続のパスワー...
%%パスワードはいつもの魚釣りのやつです.%%
--追記:getpassだと接続が不安定だったため辞めました.~
~
-サンプルではinput()を用いてSQLクエリを入力するようにして...
ループ処理を用いたプログラムなど,具体的な処理は目的に応...
~
-学外からの利用も可能です.学外利用の場合,事前にSSHの設...
設定については[[データベース用サーバ(MONSTER-HY)の利用方...
***可視化ライブラリ Dash [#l124ac03]
まずはDashをインストールしましょう.
$ pip install dash
簡単なサンプルコードを記述したファイル [&attachref(app.py...
$ python app.py
で実行すると,
Running on http://127.0.0.1:8050/
Debugger PIN: xxx-xxx-xxx
と表示されるので,ブラウザで「http://127.0.0.1:8050/」に...
~
Dashではその他にも様々な機能があります.(テキストフォー...
※&color(blue){多機能};すぎて習得が少し難しいですが,使え...
~
自分はコールバック機能まではなんとか理解しましたので,も...
さらに詳しく知りたい場合は,下のURLにある公式ドキュメント...
-https://qiita.com/OgawaHideyuki/items/6df65fbbc688f52eb82c
-https://dash.plot.ly
-https://plot.ly/python/reference/ (グラフのパラメータな...
***Pandas [#dcabcb1f]
-csvファイルで書き出すときに文字化けしないためのエンコー...
DataFrame.to_csv('ファイル名', encoding = 'utf_8_sig')
***PythonでPDF→テキスト→エクセルに変換 [#uf73648c]
処理の流れ
+Apache Tika(tiki-python)を用いてテキスト変換~
※ファイル名が長すぎるとエラーが起きる
+正規表現を用いてパターン検出,一文判定,文の連結
***other [#gfd8452c]
-JupyterLabでのDash利用ライブラリ(使い方がよくわからんの...
--https://github.com/plotly/jupyterlab-dash
--ライブラリにバグがあるのでおそらく使えません...
-python コードの書き方(参考に)
--https://qiita.com/yinawekuky/items/28d973a653e9825ed582
-JupyterLab おしゃれなプログレスバー
--https://qiita.com/dialectic4th/items/368877009f15b6b551ff
-python 機械学習の環境構築
--https://takaxtech.com/2018/10/09/article266/
-python 深層学習ライブラリKeras 公式ドキュメント
--https://keras.io/ja/
-dask サイズの大きいファイルを読み込むときに使える
--使い方はpandasと同様の使用方法で,処理実行にはcompute()...
--https://qiita.com/kodai_sudo/items/c2ff1e85da18eaf13b65
-pandas pickleファイルも使用可能
-python 複数の配列の共通要素を抽出する(配列2,3の共通要...
[配列1] = set([配列2]) & set([配列3])
**データ分析と [#nd0ecaab]
-文書の意味的類似度(Doc2Vec)
--https://deepage.net/machine_learning/2017/01/08/doc2vec...
-レコメンド精度の評価指標
--http://blog.brainpad.co.jp/entry/2017/08/25/140000
***基礎知識一覧掲載ページ [#kfaf92aa]
-統計学
--https://www.albert2005.co.jp/knowledge/statistics_analy...
-クラスター分析
--https://www.albert2005.co.jp/knowledge/data_mining
-機械学習
--https://www.albert2005.co.jp/knowledge/machine_learning
***機械学習 [#z76ae859]
-アクティブラーニング
**Other [#f14dd3dd]
-pip アップデートコマンドとその他諸々
--https://qiita.com/HyunwookPark/items/242a8ceea656416b6da8
***Mac ショートカットキー [#d95fa86c]
-command + shift + G:ファイルパス検索
-command + Q:アプリケーションの終了
-command + R:リロード
-command + H:ウィンドウを隠す
-control + D(もしくは,fn + delete):WindowsでいうDelet...
-control + K:カーソル右側文字の全削除
-control + A:カーソルを行頭に移動
-command + shift + 3:全画面スクショ
-command + shift + 4:選択範囲スクショ
ページ名: