俺言語。

自分にしか理解できない言語で書かれた備忘録

【Python】Pyinstaller specファイル

Pyinstaller Specファイルのメモ # -*- mode: python -*- block_cipher = None a = Analysis( [], # 実行する.pyファイル pathex=[''], # フォルダのパス binaries=[], # 依存するdllファイルがあれば datas=[], # 使用する画像ファイルやPDF hiddenimports=…

【Python】文字列とバイト列と16進数文字列

テキストファイルの文字化けをバイナリ(バイト列)で置換する流れ ℃はutf-8で開くとUnicodeEncodeErrorが発生。 どうやらANSI文字らしい。utf-8で無理やり扱うためにバイナリで開いて文字列を置換した時の覚え書き バイナリでテキストをread ファイルストリー…

【Python】Pyinstallerでnumpyを使ったコードをexe化する際のMKL関連エラー

numpyを使用したコードのexe化トラブル覚え書き 1."Cannot load mkl_intel_thread.dll" 使用しているnumpyのバージョンや仕様によって出てくるエラーが違うようだけど要はMKLライブラリが見つからないとのこと。 2. 非mklのnumpyでexe化 できればexe化後のフ…

【Python】例外処理のひな型

Pythonのエラー処理、毎度どうすればいいのか忘れてしまうので よく使う形の覚え書き。 import warning try: # エラーが起きそうな処理 Exception PermissionError as e: # warningを使うと標準出力に警告として出力できる. # e.argsにエラー内容が格納され…

【Python】配列から値と一致するインデックスを取り出す方法

ListとNumpyで使用感が違う。Listはインスタンスのメソッドなのに対してnumpyはnumpyクラスのメソッド。 紛らわしい。。 Listの場合 ndarrayの場合 Listの場合 list.index()を使用 a = [1, 2, 3, 4, 5] b = a.index(3) # 引数は1つのみ、listで渡せない > 2…

【Python】配列同士の AND や OR, NOT を取る方法

Boolの配列同士でAND, OR, NOTを取る方法。listとnumpyで方法が違うので覚え書き (こうゆう操作感の違いは何とかしてほしい...)配列からTrueの部分だけ抽出するときなんかに便利。 oregengo.hatenablog.com list の場合 numpy の場合 list の場合 戻り値はli…

【Python】0次元のndarrayを1次元に変換

そもそも0次元が存在しているのが意味不明なんだけど、 a = np.array(0) で作成したndarrayはshape=0のゼロ次元になってしまう。これでは例えばconcatenateでほかのndarrayと結合しようとすると b = np.zeros(10) c = np.concatenate((a, b)) ValueError: ze…

【Python】CSV, Excelなどのデータ読み込み

いろいろなモジュールがあるので一度まとめ。 numpy.genfromtxt メリット numpyのメソッドなので他のモジュールをインポートする必要なし 読み込んだデータ(戻り値)がndarrayなので使いやすい csvモジュールみたいに一行ずつの読み込みではなく一度に処理可…

よく使うコマンド

こちらがわかりやすい Linuxコマンド jellyware.jp

設定まとめ

Bluetooth設定 Bluetoohエラー時の対処法らしきもの Radikoスクリプト Bluetooth設定 かなりハマる。。 qiita.com www.trifields.jp mononichi.com Bluetoohエラー時の対処法らしきもの youness.net Radikoスクリプト www.erestage.com

導入と初期セットアップ

久々に使用したので覚え書き。 導入 初期設定 導入 imgのダウンロード Raspbian Stretch with desktop Kernel version:4.14 Download Raspbian for Raspberry Pi SDカードのフォーマット SD Memory Card Formatter imgファイルの書き込み Etcher 初期設定 St…

【Python】Python用Matlabエンジンのインストール

PythonからMatlabで作成したmファイル等を読み出したい場合に使用。 使用しているMatlabのバージョンによって使用可能なPythonのバージョンに制約があるので要注意。Matlab2016a -> Python 3.4, 3.3, 2.7 普段はPython3.7を使用してるためvirtualenvを使用し…

【Python】Anacondaよく使うコマンドと操作

仮想環境の一覧 conda info --envs 仮想環境のactivate conda activate conda_addpackage1 ローカルにダウンロードしたcondaパッケージのインストール conda install C:\Users\*****\AppData\Local\conda\conda\pkgs\***.tar.gz2 インストールされたパッケー…

【Python】複数のndarray行列からよく使うm×n配列のndarrayを作成する(縦軸:時系列データ, 横軸:データ種類)

時系列データと時間を格納した行列があるとして それから1つの配列を作成する方法 # データ準備 Time = np.array([0, 1, 2, 3....]) a = np.array([0, 1.1, 2.5, 3....]) b = np.array([0.5068, 0.840, 0.4075, 0.8574....]) # m×nの配列作成 matrix = np.co…

【Python】多次元配列

listを使った多次元配列。自分的にもこっちのほうがわかりやすい。sonickun.hatenablog.com

【Python】Pyinstaller

hope-is-dream.hatenablog.com

【Python】別バージョンのPythonをvirtualenvを使ってインストール

自分のプログラムをexe化して別のマシンで走らせようとしたところ, そのマシンが32bitであると判明。(自分は64bit) 他にも方法がありそうだけど32bitのpythonをvirtualenvを使ってインストール。 インストール pipから可能 pip install virtualenv 仮想環…

【Python】matplotlibで作成したグラフをpdfで保存しようとしたら'Can only output finite numbers in PDf'っていうエラー

題記の通り。原因はlogグラフ上にtextで値を表示するところでx=0の位置に表示させるようになってしまっていた。(xの位置はグラフの最大値の様な位置を検出して自動的に反映させるようにしていたのだけども 検出時にエラーが出た際には最大値のインデックスを…

【Python】エクセル用ライブラリの特徴まとめ

Pythonでエクセルを扱う際,いろいろなライブラリがあって更にどれも一長一短があるので簡単にまとめ。これだけで全部賄えるが無いのが残念。 xlwt,xlrd 良い所 :もっともメジャー? ダメな所:xlwtが新規作成のみで上書きに対応していない。 →xlutilsで上…

【Pycharm】アップデート後にPythonクラッシュ多発2

遅まきながらPycharmを2017.3.2をアップデートしたところ, Runは問題ないのにdebugで Process finished with exit code -1073741819 (0xC0000005) と出て強制終了するエラーが発生。print文だけの超シンプルなスクリプトでもエラーが出てdebug出来なかった…

【Android】Pythonのnp.delete(arr, range(2))相当な書き方

Pythonでndarrayをある範囲を削除する方法 arr = np.array([1, 2, 3, 4]) np.delete(arr, range(2)) > array([3, 4]) はJavaではこんな感じで書くみたい。 // arrはArrayList arr.subList(0, 2).clear();

【Android】Pythonのnp.zeros相当な書き方

Pythonで np.zeros(10) >array([ 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.]) と書ける物は以下のようにするといいみたい。 Integer [] arr = new Integer[10]; ArrayList<Integer> myList= new ArrayList<>(Arrays.asList(arr)); Collections.fill(myList, 0);//fills</integer>…

【Android】Pythonのlinspace(range)相当の書き方

Pythonで val = np.linspace(0, 1, 10) > array([ 0., 1., 2., 3., 4., 5., 6., 7., 8., 9.]) と書ける物はfor文で作るか自分でクラスを作るしかないみたい。 List list = new ArrayList(); for (int i=0; i<10; i++){ List.add(i); }

【cmd】コマンドプロンプトからイベントログ出力と削除

cmd

一連の処理を.bat化して1クリックのみで処理できるようにした。 まずはイベントログの画面出力。コマンドはwmicログの中身全てを出力すると画面上では見づらいのでここでは作成時間とメッセージのみ出力 wmic ntevent where "(LogFile = 'system') get TimeG…

【Python】numpy ndarrayとmatrixの特徴 覚書き

MATLABからの移行組にはとっつき辛いところが多々あるnumpyの配列,ndarrayの気付いた点まとめ。 numpyは基本、横ベクトル xx.shape -> (n, ) はベクトル, x.shape -> (n,m) は配列 array([1, 2, 3])やarange(10)で作成されるのはベクトル ベクトルは標記こ…

【Python】listやndarrayの中身をエクセルに張り付けるためにクリップボードへコピー

listやndarrayの中身をエクセルに張り付けて検証や検討をしたい場合に有効。 肝になるのが・リスト内容標記を使って数値を文字列にして末尾に改行コード\nを追加・"".join(データ)で文字を結合 import pyperclip def copy(data): temp = [str(i) + "\n" for…

【Python】listの掛け算は危険

【Python】グラフ枠(Spines)の色・太さ変更

グラフ枠(Spines)を一度描画した後に変更する方法。 グラフ枠はax.Spines{"Bottom"} ax.Spines{"Top"} ax.Spines{"Left"} ax.Spines{"Right"}に枠線のインスタンスがあり,色変更は ax.Spines{"**"}.set_color(色)太さ変更は ax.Spines{"**"}.set_linewidt…

【Python】matplotlibの手動で描画更新

matplotlibでアニメーションほど早い更新周期ではないものの,イベント(たとえばグラフをダブルクリック)でグラフを更新(変化)させたい場合など,グラフ更新の関数を実行してあげる必要がある。 最も一般的なのは canvas.draw()しかしこれがすごく遅い。 Fi…

【Python】win32clipboardが無いと言われる

新しい環境にpipでpywin32をインストールした時,過去に動いていたプログラムでImportError: DLL load failed when importing win32clipboard とエラーが発生。 (実際は日本語のエラー).dllにパスが通っていなのか、などいろいろ試したがexe版のpywin32で…