技術系メモ

メモ。内容は保証しません。

python

【matplotlib】y軸の指数表記を解除する

y軸が指数表記になってしまう際の解除法 ax.get_yaxis().get_major_formatter().set_useOffset(False)

【ajax, flask】flaskのアプリケーションでajax通信を行うサンプル

ajax通信でget送信をし、結果を受け取る簡単なサンプルコードを紹介します。 ディレクトリ構成は以下のようになってます。 (javascriptのファイルはhtmlに書いちゃってます) ├── app.py └── templates └── index.html html まずhtml側のコード。 <html> <head> <meta charset="utf-8"> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>…</meta></head></html>

【matplotlib】x軸のラベルの表示間隔の変更

x軸のラベルが多すぎて、重なってしまう際の対処方法についてお話します。 元のグラフ x軸の表示する目盛りを変更したグラフ 元のグラフ まず以下のコードで、元のx軸が重なってしまっているコードを表示します。 import matplotlib.pyplot as plt xs = ["AA…

【flask, javascript】flaskからhtml, javascriptに変数を渡す

python側のコード。 単純にxという変数を渡すだけ from flask import * @app.route("/", methods=["GET", "POST"]) def index(): x = 10 return render_template("index.html",x=x) flask からhtml flaskから受け取ったxを取得する {{x}} flaskからjavascrip…

pybox2dをUbuntuにインストール

まず必要なライブラリをインストールする sudo apt-get install build-essential python-dev swig python-pygame git pybox2dをクローン git clone https://github.com/pybox2d/pybox2d cd pybox2d 最後にbuildし、インストールする python setup.py build p…

指定した確率分布に従って乱数を生成する

サンプルコード import numpy as np values = ["high", "low"] # 確率変数 p = [0.9, 0.1] # 確率分布 np.random.choice(values, p=p) # 指定した確率分布に従って乱数を生成

pandasで指数平滑移動平均

以下サンプルコード import pandas as pd data = [0,2,4,6,8,10] df = pd.DataFrame(data) ema = df.ewm(span=3).mean() # 指数平滑移動平均を求める print(ema) # => # 0 # 0 0.000000 # 1 1.333333 # 2 2.857143 # 3 4.533333 # 4 6.322581 # 5 8.190476 …

python 文字列のドット以降の削除

正規表現を用いて削除してみる 以下サンプルコード。元文字 「test.xxx」のドット以降を削除する import re st = "test.xxx" # 元の文字列 new_st = e.sub(r'\..+$', '',files[0]) # ドット以降削除 print(new_st) # 変換後の文字列の出力 # => test

ipythonで過去の入力履歴を見る

以下サンプルコード In [1]: a = 1 In [2]: print(a) # => 1 In [3]: %history # 履歴出力 # => # a = 1 # print(a) # %history

open ai gymの行動空間の最大値、最小値の取得

サンプルコード import gym env = gym.make("MountainCarContinuous-v0") # 環境の読み込み env.reset() print(env.action_space.high) # 最大値 # => [1.] print(env.action_space.low) # 最小値 # => [-1.]

【python】keys, valuesを配列に

よく忘れるので、サンプルコードを上げておきます sample_dict = {"a":1, "b":2, "c":3} print(sample_dict) # => {'a': 1, 'b': 2, 'c': 3} # keysを配列に listed_keys = list(sample_dict.keys()) print(listed_keys) # -> ['a', 'b', 'c'] # valuesを配…

【python】同じディレクトリ内で変数を共有

恐らく良い方法ではないが、一応使えるので。 同じディレクトリにvars.pyという変数のファイルを用意し、以下のように記述されてるとする var1 = "var1" 同じディレクトリにmain.pyという以下のコードを作成し、そこからvars.pyの変数を取得 import vars pri…

【pandas】最後の行の削除

以下サンプルコード In [10]: df = pd.DataFrame({'A': [1.0, 1.2, 4.1], ...: 'B': [0.9, 1.5, 4.2], ...: 'C': [1.0, 1.4, 3.8]}) In [11]: df Out[11]: A B C 0 1.0 0.9 1.0 1 1.2 1.5 1.4 2 4.1 4.2 3.8 In [12]: last_index = df.index[-1] In [13]: df…

pandasのto_csvのindex

pandasのデータをcsv形式にして保存するときに、 indexを含めないようにする方法。 以下のように、 index引数をFalseにすれば良い。 df.to_csv("test.csv", index=False)

pandasで最後の行を取り出す

tailメソッドを用いる。 引数に先頭から何番目の要素を取り出すかを指定する df.tail(1)

pandasで最初の行を取り出す

headメソッドを用いれば良い。 引数に先頭から何番目の要素かを指定 df.head(1)

firebaseでデプロイする際のエラーと対処

エラー === Deploying to 'test'... i deploying functions, hosting i functions: ensuring necessary APIs are enabled... ✔ functions: all necessary APIs are enabled i functions: preparing functions directory for uploading... Error: Error parsi…

ipythonの初期読み込みファイル

ipythonを起動したら自動的に読み込んでくれるファイルの場所は ~/.ipython/profile_default/startup/00-test.pyといった形で書く。 辞書順に読み込むため、番号で管理するとわかりやすい 例えば、test.py import sys, os import readline import json impor…

matplotlibで凡例をグラフ外の右上に出す

サンプルコード 省略 plt.legend(bbox_to_anchor=(1.05, 1), loc='upper left', borderaxespad=0) # 右上に出す plt.subplots_adjust(left = 0.1, right = 0.7) # ここで、図がキャンバス内に収まるように調整する

pythonのElementTree(xmlファイル)で編集して、きれいに(改行をうまくして)保存する方法

サンプルコード from xml.dom import minidom 省略 xmlstr = minidom.parseString(ET.tostring(root)).toprettyxml(indent=" ") with open("xml.xml", "w") as f: f.write(xmlstr) 参考 https://stackoverflow.com/questions/28813876/how-do-i-get-pythons-…

【keras】keras のモデルの保存と読み込み

モデルの保存 # モデルの保存 json_model = model.to_json() with open("model.json", "w") as f json.dump(text, f) # パラメータの保存 model.save_weights("param.hdf5") 保存したモデルの読み込み from keras.models import model_from_json # モデルの…

【python】【xml】すでにあるxmlに要素を追加

サンプルコード import xml.etree.ElementTree as ET tree = ET.ElementTree(file="file.xml") # xmlを読み込む root = tree.getroot() element = ET.Element("vType") # 要素の作成 element.set("A", "a") # 属性の追加 root.insert(0, element) # 作成した…

oandpyのインストール

oandpyをpipでインストールする方法 pip install git+https://github.com/oanda/oandapy.git

【python】範囲を指定して、ランダムの整数を生成する

import random random.randint(a,b) # a以上b未満のランダムな整数を返す

ubuntuで、kivyインストール

環境 ubuntu16.04 python 3.4で動作 インストール方法 pip install Cython==0.26 pip install kivy

【python】範囲を指定して、ランダムの整数を生成する

import random random.randint(a,b) # a以上b未満のランダムな整数を返す

【python】dictオブジェクトをkeysでソート

以下コード例 import collections dct = {2:3, 1:89, 4:5, 3:0} new_dict = collections.OrderedDict(sorted(dct.items())) new_dict # => OrderedDict([(1, 89), (2, 3), (3, 0), (4, 5)]) new_dict.keys() # => odict_keys([1, 2, 3, 4]) new_dict.values(…

【python】matplotlibで軸をlogスケールにするとき

例:x軸と底が2の対数軸にしたい時には以下を追加する plt.xscale("log", basex=2)

【pyhton】指定したディレクトリにあるディレクトリ名一覧取得

import os paths = os.listdir(root_path)

エラー sqlite3.DatabaseError: database disk image is malformed

問題 実験を回して 次の日に確認したら、 以下のようなエラー文をはいてpythonが落ちていた。。。。 sqlite3.DatabaseError: database disk image is malformed 解決策(暫定) 暫定の解決法としては、 ~/.ipython/profile_default/history.sqlite を削除し、…