Python関連のことを調べてみた2019年12月09日

Python関連のことを調べてみた2019年12月09日

spaCy/GiNZAを使って日本語文書のカテゴリ分類を学習する(失敗)

この記事は[ユニークビジョン株式会社 Advent Calendar 2019](https://qiita.com/advent-calendar/2019/uniquevision)の9日目の記事です。

# はじめに

本記事は[spaCyのCLIで文書のカテゴリ分類を学習する](https://qiita.com/kyamamoto9120/items/84d62c3b33fb77c03fbe)の続編です。
前回は英語の文書を扱いましたが、本記事では日本語文書を対象に、spaCyのCLIを用いてカテゴリ分類の学習を行います。

# 前提条件
前回同様、実行環境にはgoogle ColabのGPUランタイムを使用しており、GPUはTesla P100です。
また、ライブラリのバージョンは

* ginza 2.2.1
* spacy 2.2.1

です。
GiNZAは以下の手順でインストールしておきます。

“`console
$ pip install “https://github.com/megagonlabs/ginza/releases/download/latest

元記事を表示

1 Clickでエグゼクティブになるボタン

迫る年の瀬、寒いのは冬のせいか、懐のせいか、・・・
なにかと灰色の心持ちになるこの季節、ほのかなマッチにも似たアプリを作成しました。1 Clickで上場企業の役員になれるアプリです!その名も「エグゼクティブ・ボタン」。↓の画像をクリックすると起動します。



**エグゼクティブボタンのここがすごい!**

ボタンを押すだけで上場企業の役員報酬が手に入る!!

**エグゼクティブボタンのここがクソ!**

ほんとには手に入らない!!

実装はこちらです。

https://github.com/icoxfog417/exe

元記事を表示

日常生活にも役立つ!?コスパ最強の実験計画法をPythonで半自動化


# 概要
– 実験回数を大幅に効率化する「実験計画法」について(ざっくり)説明します。
– 実験計画法の手続きがやや複雑なため、手続き部分をPythonで自動化します(今回の目的)。

# 実験計画法とはなにか(どう役に立つか)

>実験計画法(じっけんけいかくほう、英: Experimental design、Design of experiments)は、効率のよい実験方法を設計(デザイン)し、結果を適切に解析することを目的とする統計学の応用分野である。
> [Wikipediaより](https://ja.wikipedia.org/wiki/%E5%AE%9F%E9%A8

元記事を表示

【画像で説明】KaggleのNoteBookでpickleをつかい回す

# やること
1. csvファイルのデータセットをpickle化
2. pickleファイルを別のnotebookで読み込む

# pickleってなんなのよ?
pythonオブジェクトをバイナリデータで保存するやつ
https://docs.python.org/ja/3/library/pickle.html

# なにがうれしくて?
読み込みが早い
バイナリデータなのでパーズ処理がいらんから早いんですって
学習済みモデルとかもpickle化してつかい回せる

こちらの検証記事がすばらしいです
[Python: pandas の永続化フォーマットについて調べた](https://blog.amedama.jp/entry/2018/07/11/081050)

# タイタニックのデータでやってみる
ひとまずtrain.csvをpickleにする
コードはこれだけ

“`.py
# pickleは標準ライブラリなのでinstall不要
import pickle

import pandas as pd

train = pd.read_csv(‘../input/tita

元記事を表示

nfcpyとPaSoRiでNFCタグを読む

# はじめに

ソニーのPaSoRi(RC-S370,[RC-S380](https://www.sony.co.jp/Products/felica/consumer/products/RC-S380.html))でNFCタグを読みたいと思って[nfcpy](https://github.com/nfcpy/nfcpy)を使ってみたところ,特にWindows 10環境でいろいろハマったのでまとめておきます。

詳細は[https://scrapbox.io/saitotetsuya/nfcpy](https://scrapbox.io/saitotetsuya/nfcpy)にまとめていて,適宜更新しています。

# 環境に依存しない話

* nfcpyは[v1.0.0](https://github.com/nfcpy/nfcpy/releases/tag/v1.0.0)以降でPython3に対応している(2019年12月9日現在で最新は[v1.0.3](https://github.com/nfcpy/nfcpy/releases/tag/v1.0.3))。
* デバイス番号はPa

元記事を表示

pythonで画像を集めてみただけ

# はじめに

こちらの記事は、 [SLP KBIT Advent Calendar 2019](https://adventar.org/calendars/4214) の9日目の記事です。

pythonを使って画像スクレイピングを行いました。
サイトのURLを貼ったら、そのサイトの画像を全部表示してくれるものを作りました。

### 使用環境
-python 3.7.4

# 全体のコード

**フォルダの構成**

├── cgi-bin
│ └── image_scraping.py
└── style.css
└── index.html

“`python:image_scraping.py
# スクレイピング用
import requests
from bs4 import BeautifulSoup
# フォームデータ受け取り用
import cgi

# —検索フォームのボタンを押したときに出力するhtml—
html_body1 = “””



画像スクレイ</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>スクレイピング</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/ikabust/items/11c31c68cd99569deb02'>元記事を表示</a></div> <h3 id="outline__7"><a href='https://qiita.com/best_not_best/items/208538f63abcbe4a5cfe'>PythonでMeasurement Protocolを使う</a></h3> <blockquote><p>皆さんこんにちは。@best_not_bestです。</p> <p>GoogleアナリティクスのMeasurement Protocolを使用することで、HTTPリクエストで生データを Googleアナリティクスサーバに直接送信することが出来ます。<br /> これにより、オンラインとオフラインでの行動を結び付け、Googleアナリティクス上で分析することが可能になります。</p> <p>## Measurement Protocolについて</p> <p>### 公式ドキュメント</p> <p>https://developers.google.com/analytics/devguides/collection/protocol/</p> <p>### データインポートとの違い</p> <p>Googleアナリティクスには[データインポート](https://support.google.com/analytics/answer/3191589)という似たような機能がありますが、違いは(ざっくりと)以下になります。</p> <p>| | Measurement Protocol | データインポート |<br /> |:—–:|:—–|:—–|<br /> | **データの送信方</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>GoogleAnalytics</div> <div class='tag-cloud-link'>MeasurementProtocol</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/best_not_best/items/208538f63abcbe4a5cfe'>元記事を表示</a></div> <h3 id="outline__8"><a href='https://qiita.com/zawawahoge/items/baa2a5318df079c5f7e5'>【完全版】Jupyter Notebook ショートカット</a></h3> <blockquote><p># Jupyter Notebook ショートカット<br /> Jupyter Notebookで `h` で出てくるショートカット一覧をWindows,Mac共に全て日本語に訳しました。<br /> 探しましたが、日本語でWindowsとMacが全部載っている一覧表がなかったので、もしかしたら需要あるかも?</p> <p># Windows</p> <p>## コマンドモード<br /> | ショートカットキー | 説明 |<br /> |————–|———————–|<br /> | F | 検索・置換 |<br /> | Ctrl-Shift-F | コマンドパレットを開く |<br /> | Ctrl-Shift-P | コマンドパレットを開く |<br /> | Enter | 編集モードにする |<br /> | P | コマンドパレットを開く |<br /> | Shift-Enter | セルを実行し、下のセルに移</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>ショートカット</div> <div class='tag-cloud-link'>Jupyter</div> <div class='tag-cloud-link'>Jupyter-notebook</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/zawawahoge/items/baa2a5318df079c5f7e5'>元記事を表示</a></div> <h3 id="outline__9"><a href='https://qiita.com/ktr_wtb/items/fdd58cd42bfc4a22639e'>形態素解析ツールインストール(MeCab,Juman++,Janome,GiNZA)</a></h3> <blockquote><p>日本語のテキスト処理には形態素解析ツールが欠かせませんが、都度ツールのインストール方法を調べるのが面倒だったので、以下の4つについてインストールをまとめました</p> <p>– MeCab<br /> – Juman++<br /> – Janome<br /> – GiNZA</p> <p>インストール環境:Ubuntu 18.04</p> <p>## MeCab<br /> [公式サイト](https://taku910.github.io/mecab/)より引用<br /> > MeCabは 京都大学情報学研究科−日本電信電話株式会社コミュニケーション科学基礎研究所 共同研究ユニットプロジェクトを通じて開発されたオープンソース 形態素解析エンジンです。 言語, 辞書,コーパスに依存しない汎用的な設計を 基本方針としています。 パラメータの推定に Conditional Random Fields (CRF) を用 いており, ChaSenが採用している 隠れマルコフモデルに比べ性能が向上しています。また、平均的に ChaSen, Juman, KAKASIより高速に動作します。</p> <p>“`<br /> apt-get install -y mecab libmecab-dev meca</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>NLP</div> <div class='tag-cloud-link'>形態素解析</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/ktr_wtb/items/fdd58cd42bfc4a22639e'>元記事を表示</a></div> <h3 id="outline__10"><a href='https://qiita.com/siinai/items/1561404579626b65cf20'>Python手遊び(mordredでいっぱい計算)</a></h3> <blockquote><p>#この記事、何?<br /> ケモインフォマティクスのかけらの記事。<br /> 記述子計算ライブラリのMordred (1.0.0) を使っていて、計算結果としてのinfをようやく見つけてみた、という話。</p> <p>#背景<br /> 最近、記述子計算結果をちょっとだけ扱っているの。<br /> で、「inf」という結果があるらしいと。でも見たことない。<br /> 軽く1000件くらい探してみたけど見つからない。<br /> じゃ、開き直って数万件とか計算させて見つけてみようか、と。</p> <p>#方針<br /> 普通にMordred計算。<br /> で、エラーが出る都度exceptを追記。<br /> そのうち長時間稼働し続けるでしょ、というくらいの感じでした。</p> <p>#環境<br /> Windows 10 Pro (x64)でAnacondaから作った以下の環境。</p> <p>“`<br /> # Name Version Build Channel<br /> python 3.6.8 h9f7ef89_7<br /> rdkit 2017.09.2.0 py3</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>ケモインフォマティクス</div> <div class='tag-cloud-link'>mordred</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/siinai/items/1561404579626b65cf20'>元記事を表示</a></div> <h3 id="outline__11"><a href='https://qiita.com/Naka-u/items/41a81d9cf7d51b7eb598'>この2019年12月に初学者がRかPythonを学ぶなら、どっち?</a></h3> <blockquote><p>#RとPythonどっちが良い??<br /> 最近はだいぶPythonから入って、Rは別に、、みたいな人も増えましたが、よくある疑問が「RとPythonどちらを覚えるべきか?」ですね!</p> <p>個人的な答えは「両方覚えれば?」です笑<br /> どちらか一つしか選べない、というものでもないですし、求人とか見ても「RやPyhonを用いて分析した経験」のように両方書いてあることも多いので。<br /> 何より、どちらかしかわからない人より、両方わかるほうが市場価値は高いんじゃないでしょうか。(もちろん、これだけで市場価値は決まらないですけどね)</p> <p>#とはいうものの初心者が始めるにはどっちが。。。<br /> ただ、初学者がいきなり両方勉強するのはなかなか大変かと思いますので、まずどちらか入るべきか?という視点でいくと下記のようになるかなと。。</p> <p>R</p> <p>・プログラミングがそもそも初心者</p> <p>・記述統計寄りのバックグラウンドで、そちら寄りの分析がしたい</p> <p>Python</p> <p>・機械学習寄りのことがしたい</p> <p>・画像認識などをやりたい</p> <p>#だいたいどちらでも同じことができる<br /> 階層ベイズモデルなり、状態空間モデルなり、MCMC推定なり、クラ</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>R</div> <div class='tag-cloud-link'>Julia</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/Naka-u/items/41a81d9cf7d51b7eb598'>元記事を表示</a></div> <h3 id="outline__12"><a href='https://qiita.com/bee2/items/4aaec7206b7deadc01a3'>Qiita APIを使って「いいね」をLINEに通知するアプリをLambdaで構築した</a></h3> <blockquote><p># 概要<br /> 以下のようなQiitaのいいねのLINE通知がほしいなーとふと思い立ち、<br /> <img decoding="async" width="300" alt="line.jpg" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/246552/6bc89921-af99-3ebc-3c2a-1f1584b79045.jpeg?test=1&y=n"></p> <p>関連する記事を発見!<br /> -> [Qiitaでいいねが付くとLINE通知してくれる優しい世界を構築した](https://qiita.com/Sinhalite/items/8fd408071ec7ab9a58e2)</p> <p>構成が簡潔で(記事自体も)すごく参考になります。</p> <p>今回、Lambdaを始めとしたAWSのサービスを使って、イベント駆動型のアプリケーションを作ってみたかったので少し構成を変えて真似してみました。</p> <p># 本記事の流れ<br /> 1. 構成の概要<br /> 2. 使った技術要素の紹介<br /> 3. 実装の説明</p> <p># 1. 構成の概要<br /> ## 構成図<br /> <img decoding="async" width="600" alt="Diagram.jpg" src="h</p></blockquote> </blockquote> <aside class=?test=1&y=n'widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>QiitaAPI</div> <div class='tag-cloud-link'>DynamoDB</div> <div class='tag-cloud-link'>lambda</div> <div class='tag-cloud-link'>LineNotify</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/bee2/items/4aaec7206b7deadc01a3'>元記事を表示</a></div> <h3 id="outline__13"><a href='https://qiita.com/c-yan/items/8f1148ffd19a2685af48'>AtCoder Beginner Contest 147 参戦記</a></h3> <blockquote><p># AtCoder Beginner Contest 147 参戦記</p> <p>## A – Blackjack</p> <p>2分半で突破. 書くだけ.</p> <p>“`python<br /> A1, A2, A3 = map(int, input().split())</p> <p>if sum([A1, A2, A3]) >= 22:<br /> print(‘bust’)<br /> else:<br /> print(‘win’)<br /> “`</p> <p>## B – Palindrome-philia</p> <p>2分で突破. 書くだけ.</p> <p>“`python<br /> S = input()</p> <p>result = 0<br /> for i in range(len(S) // 2):<br /> if S[i] != S[-(i + 1)]:<br /> result += 1<br /> print(result)<br /> “`</p> <p>## D – Xor Sum 4</p> <p>46分くらい?で突破. Cを提出したら WA3 で諦めてこっちに取り掛かったのでよく分からず. ビットごとに累積 XOR をするだけ. だけって言ってもコーディングは中々大変. Python で書いたら TLE になったので、Go で書き直した. `% 10</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>Go</div> <div class='tag-cloud-link'>AtCoder</div> <div class='tag-cloud-link'>Python3</div> <div class='tag-cloud-link'>競技プログラミング</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/c-yan/items/8f1148ffd19a2685af48'>元記事を表示</a></div> <h3 id="outline__14"><a href='https://qiita.com/kitarikes/items/beb33f72077f9d8374f2'>pip install pyrebase しただけなのに… (UnicodeDecodeError)</a></h3> <blockquote><p>#はじめに<br /> flaskでfirebaseを使おうと思い、便利~~(?)~~なpyrebaseというライブラリを見つけたのが全ての始まりであった。<br /> #chapter: 1 ~予兆~<br /> anaconda プロンプトで pip install</p> <p>“`<br /> (flask_env) C:\Users\ryosu\flask_project\auto_call_app>pip install pyrebase4<br /> Collecting pyrebase4<br /> Using cached https://files.pythonhosted.org/packages/25/17/653e33c0f3d4fb6556570c955b9a298990dd515bbd09b1a2abc99ec7a9fa/Pyrebase4-4.3.0-py3-none-any.whl<br /> Collecting pycryptodome>=3.6.4<br /> Using cached https://files.pythonhosted.org/packages/c8/a9/d65f44cdb4b44e05b494fa0bfed08710</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>Flask</div> <div class='tag-cloud-link'>Jws</div> <div class='tag-cloud-link'>Firebase</div> <div class='tag-cloud-link'>pyrebase</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/kitarikes/items/beb33f72077f9d8374f2'>元記事を表示</a></div> <h3 id="outline__15"><a href='https://qiita.com/yaiwase/items/0938b9ff3ddab7c05e10'>Amazon SageMaker での機械学習モデルのメトリクス監視をさっと良くする方法</a></h3> <blockquote><p>この記事は [ミクシィグループ Advent Calendar 2019](https://qiita.com/advent-calendar/2019/mixi) 、9日目の記事です</p> <p># 概要<br /> (3行まとめ)</p> <p>* 機械学習のトレーニングジョブの精度モニタリング、モデル比較をいい感じにやりたい<br /> * Amazon SageMaker では CloudWatch メトリクスのチャートが提供されるが、見づらい・・<br /> * SageMaker SDK または 独自コードでメトリクス収集して、メトリクスデータやグラフをモデルと同じ場所(S3)に置くとよかった</p> <p># 課題 :innocent:</p> <p>Amazon SageMaker では、トレーニングジョブのメトリクス監視用に [CloudWatch メトリクスをベースとしたチャートが提供](https://aws.amazon.com/jp/blogs/news/easily-monitor-and-visualize-metrics-while-training-models-on-amazon-sagemaker/) され、マネジメントコンソ</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>AWS</div> <div class='tag-cloud-link'>機械学習</div> <div class='tag-cloud-link'>可視化</div> <div class='tag-cloud-link'>SageMaker</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/yaiwase/items/0938b9ff3ddab7c05e10'>元記事を表示</a></div> <h3 id="outline__16"><a href='https://qiita.com/souring001/items/d4312c2bdcd19016aab4'>カメラキャリブレーションを視覚的に理解する</a></h3> <blockquote><p>カメラキャリブレーションはレンズの歪み補正などに使われますが、それぞれの係数がどう影響を及ぼしているのかわかりにくく感じます。</p> <p>そこで直感的に理解できるようにしてみようと思います。</p> <p># カメラキャリブレーションとは<br /> 理想的なピンホールカメラモデルでない限り、左図のように画像は歪んでいます。<br /> カメラ固有の歪み係数を求めることで、このように歪んだ画像を補正することができます。</p> <p>![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/404817/5d7f33a9-b595-b007-118e-982c674e7ce5.png)</p> <p>## カメラキャリブレーションの仕組み</p> <p>カメラキャリブレーションを行う際は、チェッカーボードと呼ばれるものを印刷します。<br /> ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/404817/92b49acc-d19c-0aea-39f2-b4e4dcb4980f.png)</p> <p>パ</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>画像処理</div> <div class='tag-cloud-link'>OpenCV</div> <div class='tag-cloud-link'>ComputerVision</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/souring001/items/d4312c2bdcd19016aab4'>元記事を表示</a></div> <h3 id="outline__17"><a href='https://qiita.com/MizugiwaHuyu/items/ea159003e0b0ea4e64c4'>ガウス過程回帰 Numpy実装とGPy</a></h3> <blockquote><p># はじめに<br /> こんな回帰直線引いちゃっていいのと疑問に思うようなグラフを見ることがあります。<br /> 例えば</p> <p>“`python<br /> import numpy as np<br /> import matplotlib.pyplot as plt</p> <p>plt.rcParams[“font.family”] = “Times New Roman” #全体のフォントを設定<br /> plt.rcParams[“xtick.direction”] = “in” #x軸の目盛線を内向きへ<br /> plt.rcParams[“ytick.direction”] = “in” #y軸の目盛線を内向きへ<br /> plt.rcParams[“xtick.minor.visible”] = True #x軸補助目盛りの追加<br /> plt.rcParams[“ytick.minor.visible”] = True #y軸補助目盛りの追加<br /> plt.rcParams[“xtick.major.width”] = 1.5 #x軸主</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>numpy</div> <div class='tag-cloud-link'>Python3</div> <div class='tag-cloud-link'>ガウス過程</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/MizugiwaHuyu/items/ea159003e0b0ea4e64c4'>元記事を表示</a></div> <h3 id="outline__18"><a href='https://qiita.com/snowp/items/4cfa8847a13e1c63d6f6'>windowsでvenv環境でVSCodeを使用方法</a></h3> <blockquote><p># 概要</p> <p>pythonの開発でvenvを使うことは多いと思いますが、<br /> 調べてみてもMacの情報などが多かったので、<br /> windows版での構築手順をまとめてみようかと思います。<br /> ついでにVSCodeを使う方法も併せてまとめます。<br /> pythonのインストール手順などは省いています。</p> <p>以下の記事を参考にさせていただきました。<br /> https://qiita.com/fiftystorm36/items/b2fd47cf32c7694adc2e<br /> https://qiita.com/some-nyan/items/7f20fa5fa0b6e451a42b<br /> https://qiita.com/Avocado/items/3e71870815d6c54c1eea</p> <p>## 準備</p> <p>1. 作業ディレクトリの作成<br /> * まずどこで作業するかを決めます。<br /> その場所でライブラリのインストールなどを行うことになるため日本語が含まれていない場所が必要です。またVSCodeの作業用のフォルダにもなるのであまり長くないほうが良さそうです。(`C:\pythondev\001` とか作成します)<br /> 1. </p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>venv</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/snowp/items/4cfa8847a13e1c63d6f6'>元記事を表示</a></div> <h3 id="outline__19"><a href='https://qiita.com/ibn/items/77dbf5e89b67bf0b8e5e'>Djangoで継承したModelにおいて、継承元Modelにリレーションを貼りレコードを作成する方法</a></h3> <blockquote><p># 概要</p> <p>Djangoで継承したModelにおいて、継承元Modelにリレーションを貼りレコードを作成する方法</p> <p>継承元Modelにリレーションを貼る際に、継承元Modelが意図しない値に変更される場合があるので<br /> 注意・回避方法含め書きます!</p> <p>~~Djangoの挙動に惑わされました~~<br /> Django大好きです</p> <p># 動作を確認した環境</p> <p>Python==3.7.4<br /> Django=2.2.3</p> <p># 結論</p> <p>Model継承時に暗黙的に定義される `{モデル名}_ptr` フィールドにModelオブジェクトを与えます</p> <p>このとき、 `Model.save()` や `Model.objects.create()` を行うと継承元のModelが意図しない値に変更される場合があるため `.save_base(raw=True)` を使用します</p> <p>“`py<br /> # モデルの定義<br /> from django.db import models</p> <p>class Parent(models.Model):<br /> parent_column = models.CharField(max_len</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>Django</div> <div class='tag-cloud-link'>Python3</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/ibn/items/77dbf5e89b67bf0b8e5e'>元記事を表示</a></div> <h3 id="outline__20"><a href='https://qiita.com/perceptron01/items/994e01b1fc0ad121c27b'>ElastAlertでカスタムルールを作成する</a></h3> <blockquote><p>この記事は [MicroAd (マイクロアド) Advent Calendar 2019 ](https://qiita.com/advent-calendar/2019/microad)の9日目の記事です。</p> <p># はじめに</p> <p>みんな大好きElasticsearchですが、<br /> 「Elasticsearch上のデータを常時監視して、特定のパターンが発生したらアラートを飛ばしたい」というときに便利なのが、[ElastAlert](https://github.com/Yelp/elastalert)というツールです。</p> <p>ElastAlertには`Rule`と呼ばれる監視パターンがデフォルトで何種類も用意されているのですが、それだけでは自分の要望を満たせないときもあります。<br /> そんなときは、カスタムルールと呼ばれる新しい監視パターンを自分で作成して解決しましょう。</p> <p># 作り方<br /> カスタムルールを作る際に参考にしたのはこの2つ。とくに後者は実用的なコードが載っていて必見です。</p> <p>* [本家のドキュメント](https://elastalert.readthedocs.io/en/latest/r</p></blockquote> </blockquote> <aside class='widget widget-post'> <div class='tag-cloud-link'>Python</div> <div class='tag-cloud-link'>Elasticsearch</div> <div class='tag-cloud-link'>elastalert</div> </aside> <div><a style='width:100%;' class='btn__link' href='https://qiita.com/perceptron01/items/994e01b1fc0ad121c27b'>元記事を表示</a></div> </div> </section> <!-- 記事下シェアボタン --> <aside> <ul class="socialList"> <li class="socialList__item"><a class="socialList__link icon-facebook" href="http://www.facebook.com/sharer.php?u=https%3A%2F%2Fmiofactor.com%2F2019%2F12%2F09%2Fpost-1275%2F&t=Python%E9%96%A2%E9%80%A3%E3%81%AE%E3%81%93%E3%81%A8%E3%82%92%E8%AA%BF%E3%81%B9%E3%81%A6%E3%81%BF%E3%81%9F2019%E5%B9%B412%E6%9C%8809%E6%97%A5" target="_blank" title="Facebookで共有"></a></li><li class="socialList__item"><a class="socialList__link icon-twitter" href="http://twitter.com/intent/tweet?text=Python%E9%96%A2%E9%80%A3%E3%81%AE%E3%81%93%E3%81%A8%E3%82%92%E8%AA%BF%E3%81%B9%E3%81%A6%E3%81%BF%E3%81%9F2019%E5%B9%B412%E6%9C%8809%E6%97%A5&https%3A%2F%2Fmiofactor.com%2F2019%2F12%2F09%2Fpost-1275%2F&url=https%3A%2F%2Fmiofactor.com%2F2019%2F12%2F09%2Fpost-1275%2F" target="_blank" title="Twitterで共有"></a></li><li class="socialList__item"><a class="socialList__link icon-line" href="http://line.naver.jp/R/msg/text/?Python%E9%96%A2%E9%80%A3%E3%81%AE%E3%81%93%E3%81%A8%E3%82%92%E8%AA%BF%E3%81%B9%E3%81%A6%E3%81%BF%E3%81%9F2019%E5%B9%B412%E6%9C%8809%E6%97%A5%0D%0Ahttps%3A%2F%2Fmiofactor.com%2F2019%2F12%2F09%2Fpost-1275%2F" target="_blank" title="LINEで送る"></a></li></ul> </aside> <!-- /記事下シェアボタン --> <!-- 記事下エリア[widget] --> <aside class="widgetPost widgetPost-bottom"><aside class="widget widget-post"><h2 class="heading heading-primary">タグ</h2><div class="tagcloud"><a href="https://miofactor.com/tag/%e3%81%9d%e3%81%ae%e4%bb%96/" class="tag-cloud-link tag-link-13 tag-link-position-1" style="font-size: 8pt;" aria-label="その他 (1個の項目)">その他</a></div> </aside></aside> <!-- /記事下エリア[widget] --> <!-- 関連記事 --> <aside class="related"><h2 class="heading heading-primary">関連する記事</h2><ul class="related__list"> <li class="related__item"> <a class="related__imgLink" href="https://miofactor.com/2020/11/19/post-8809/" title="Ruby関連のことを調べてみた2020年11月19日"> <img src="https://miofactor.com/wp-content/uploads/2019/10/ruby-150x150.png" alt="Ruby関連のことを調べてみた2020年11月19日" width="150" height="150" > </a> <h3 class="related__title"> <a href="https://miofactor.com/2020/11/19/post-8809/">Ruby関連のことを調べてみた2020年11月19日</a> <span class="icon-calendar">2020.11.19</span> </h3> <p class="related__contents">目次 1. Herokuに「The page you were looking for doesn’t exist. 」が出たがコミットで[…]</p> </li> <li class="related__item"> <a class="related__imgLink" href="https://miofactor.com/2024/09/14/post-36755/" title="JavaScript関連のことを調べてみた"> <img src="https://miofactor.com/wp-content/uploads/2019/10/js-150x150.png" alt="JavaScript関連のことを調べてみた" width="150" height="150" > </a> <h3 class="related__title"> <a href="https://miofactor.com/2024/09/14/post-36755/">JavaScript関連のことを調べてみた</a> <span class="icon-calendar">2024.09.14</span> </h3> <p class="related__contents">目次 1. forEachでawaitを使おうとしたら怒られた2. p5.js で呼び出した YouTube動画の再生位置の時間を YouTube の[…]</p> </li> <li class="related__item"> <a class="related__imgLink" href="https://miofactor.com/2022/08/02/post-21270/" title="Python3関連のことを調べてみた2022年08月02日"> <img src="https://miofactor.com/wp-content/uploads/2019/10/python-150x150.png" alt="Python3関連のことを調べてみた2022年08月02日" width="150" height="150" > </a> <h3 class="related__title"> <a href="https://miofactor.com/2022/08/02/post-21270/">Python3関連のことを調べてみた2022年08月02日</a> <span class="icon-calendar">2022.08.02</span> </h3> <p class="related__contents">目次 1. RM mini3用にリモコン信号を変換2. 2つの線分の交差判定(python)3. SIGNATE StudentCup2022【予測部[…]</p> </li> </ul></aside> <!-- /関連記事 --> <!-- コメント --> <!-- /コメント --> <!-- PVカウンター --> <!-- /PVカウンター --> </main> <!-- /l-main --> <!-- l-sidebar --> <div class="l-sidebar"> <aside class="widget"> <div class="searchBox"> <form class="searchBox__form" method="get" target="_top" action="https://miofactor.com/" > <input class="searchBox__input" type="text" maxlength="50" name="s" placeholder="記事検索"><button class="searchBox__submit icon-search" type="submit" value="search"> </button> </form> </div></aside><aside class="widget"><h2 class="heading heading-widget">Category</h2> <ul> <li class="cat-item cat-item-1"><a href="https://miofactor.com/category/other/">OTHER</a> </li> </ul> </aside><aside class="widget"><h2 class="heading heading-widget">Back number</h2> <ul> <li><a href='https://miofactor.com/2024/09/'>2024年9月</a></li> <li><a href='https://miofactor.com/2024/08/'>2024年8月</a></li> <li><a href='https://miofactor.com/2024/07/'>2024年7月</a></li> <li><a href='https://miofactor.com/2024/06/'>2024年6月</a></li> <li><a href='https://miofactor.com/2024/05/'>2024年5月</a></li> <li><a href='https://miofactor.com/2024/04/'>2024年4月</a></li> <li><a href='https://miofactor.com/2024/03/'>2024年3月</a></li> <li><a href='https://miofactor.com/2024/02/'>2024年2月</a></li> <li><a href='https://miofactor.com/2024/01/'>2024年1月</a></li> <li><a href='https://miofactor.com/2023/12/'>2023年12月</a></li> <li><a href='https://miofactor.com/2023/11/'>2023年11月</a></li> <li><a href='https://miofactor.com/2023/10/'>2023年10月</a></li> <li><a href='https://miofactor.com/2023/09/'>2023年9月</a></li> <li><a href='https://miofactor.com/2023/08/'>2023年8月</a></li> <li><a href='https://miofactor.com/2023/07/'>2023年7月</a></li> <li><a href='https://miofactor.com/2023/04/'>2023年4月</a></li> <li><a href='https://miofactor.com/2023/03/'>2023年3月</a></li> <li><a href='https://miofactor.com/2023/02/'>2023年2月</a></li> <li><a href='https://miofactor.com/2023/01/'>2023年1月</a></li> <li><a href='https://miofactor.com/2022/12/'>2022年12月</a></li> <li><a href='https://miofactor.com/2022/11/'>2022年11月</a></li> <li><a href='https://miofactor.com/2022/10/'>2022年10月</a></li> <li><a href='https://miofactor.com/2022/09/'>2022年9月</a></li> <li><a href='https://miofactor.com/2022/08/'>2022年8月</a></li> <li><a href='https://miofactor.com/2022/07/'>2022年7月</a></li> <li><a href='https://miofactor.com/2022/06/'>2022年6月</a></li> <li><a href='https://miofactor.com/2022/05/'>2022年5月</a></li> <li><a href='https://miofactor.com/2022/04/'>2022年4月</a></li> <li><a href='https://miofactor.com/2022/03/'>2022年3月</a></li> <li><a href='https://miofactor.com/2022/02/'>2022年2月</a></li> <li><a href='https://miofactor.com/2022/01/'>2022年1月</a></li> <li><a href='https://miofactor.com/2021/12/'>2021年12月</a></li> <li><a href='https://miofactor.com/2021/11/'>2021年11月</a></li> <li><a href='https://miofactor.com/2021/10/'>2021年10月</a></li> <li><a href='https://miofactor.com/2021/09/'>2021年9月</a></li> <li><a href='https://miofactor.com/2021/08/'>2021年8月</a></li> <li><a href='https://miofactor.com/2021/07/'>2021年7月</a></li> <li><a href='https://miofactor.com/2021/06/'>2021年6月</a></li> <li><a href='https://miofactor.com/2021/05/'>2021年5月</a></li> <li><a href='https://miofactor.com/2021/04/'>2021年4月</a></li> <li><a href='https://miofactor.com/2021/03/'>2021年3月</a></li> <li><a href='https://miofactor.com/2021/02/'>2021年2月</a></li> <li><a href='https://miofactor.com/2021/01/'>2021年1月</a></li> <li><a href='https://miofactor.com/2020/12/'>2020年12月</a></li> <li><a href='https://miofactor.com/2020/11/'>2020年11月</a></li> <li><a href='https://miofactor.com/2020/10/'>2020年10月</a></li> <li><a href='https://miofactor.com/2020/09/'>2020年9月</a></li> <li><a href='https://miofactor.com/2020/08/'>2020年8月</a></li> <li><a href='https://miofactor.com/2020/07/'>2020年7月</a></li> <li><a href='https://miofactor.com/2020/06/'>2020年6月</a></li> <li><a href='https://miofactor.com/2020/05/'>2020年5月</a></li> <li><a href='https://miofactor.com/2020/04/'>2020年4月</a></li> <li><a href='https://miofactor.com/2020/03/'>2020年3月</a></li> <li><a href='https://miofactor.com/2020/02/'>2020年2月</a></li> <li><a href='https://miofactor.com/2020/01/'>2020年1月</a></li> <li><a href='https://miofactor.com/2019/12/'>2019年12月</a></li> <li><a href='https://miofactor.com/2019/11/'>2019年11月</a></li> <li><a href='https://miofactor.com/2019/10/'>2019年10月</a></li> </ul> </aside> </div> <!-- /l-sidebar --> </div> <!-- /l-wrapper --> <div class="categoryBox"> <div class="container"> <h2 class="heading heading-primary"> <span class="heading__bg u-txtShdw bgc-darkgray">OTHER</span>カテゴリの最新記事 </h2> <ul class="categoryBox__list"> <li class="categoryBox__item"> <div class="eyecatch eyecatch-archive"> <a href="https://miofactor.com/2024/09/19/post-36890/"> <img src="https://miofactor.com/wp-content/uploads/2019/10/js-554x410.png" alt="JavaScript関連のことを調べてみた" width="554" height="410" > </a> </div> <ul class="dateList dateList-archive"> <li class="dateList__item icon-calendar">2024.09.19</li> </ul> <h2 class="heading heading-archive "> <a class="hc-darkgray" href="https://miofactor.com/2024/09/19/post-36890/">JavaScript関連のことを調べてみた</a> </h2> </li> <li class="categoryBox__item"> <div class="eyecatch eyecatch-archive"> <a href="https://miofactor.com/2024/09/19/post-36891/"> <img src="https://miofactor.com/wp-content/uploads/2019/10/java.jpg" alt="JAVA関連のことを調べてみた" width="540" height="270" > </a> </div> <ul class="dateList dateList-archive"> <li class="dateList__item icon-calendar">2024.09.19</li> </ul> <h2 class="heading heading-archive "> <a class="hc-darkgray" href="https://miofactor.com/2024/09/19/post-36891/">JAVA関連のことを調べてみた</a> </h2> </li> <li class="categoryBox__item"> <div class="eyecatch eyecatch-archive"> <a href="https://miofactor.com/2024/09/19/post-36894/"> <img src="https://miofactor.com/wp-content/uploads/2019/10/ios-554x410.png" alt="iOS関連のことを調べてみた" width="554" height="410" > </a> </div> <ul class="dateList dateList-archive"> <li class="dateList__item icon-calendar">2024.09.19</li> </ul> <h2 class="heading heading-archive "> <a class="hc-darkgray" href="https://miofactor.com/2024/09/19/post-36894/">iOS関連のことを調べてみた</a> </h2> </li> <li class="categoryBox__item"> <div class="eyecatch eyecatch-archive"> <a href="https://miofactor.com/2024/09/19/post-36888/"> <img src="https://miofactor.com/wp-content/uploads/2019/10/rails-725x410.png" alt="Rails関連のことを調べてみた" width="725" height="410" > </a> </div> <ul class="dateList dateList-archive"> <li class="dateList__item icon-calendar">2024.09.19</li> </ul> <h2 class="heading heading-archive "> <a class="hc-darkgray" href="https://miofactor.com/2024/09/19/post-36888/">Rails関連のことを調べてみた</a> </h2> </li> <li class="categoryBox__item"> <div class="eyecatch eyecatch-archive"> <a href="https://miofactor.com/2024/09/19/post-36884/"> <img src="https://miofactor.com/wp-content/uploads/2019/10/lambda.png" alt="Lambda関連のことを調べてみた" width="360" height="230" > </a> </div> <ul class="dateList dateList-archive"> <li class="dateList__item icon-calendar">2024.09.19</li> </ul> <h2 class="heading heading-archive "> <a class="hc-darkgray" href="https://miofactor.com/2024/09/19/post-36884/">Lambda関連のことを調べてみた</a> </h2> </li> <li class="categoryBox__item"> <div class="eyecatch eyecatch-archive"> <a href="https://miofactor.com/2024/09/19/post-36886/"> <img src="https://miofactor.com/wp-content/uploads/2019/10/python-640x410.png" alt="Python関連のことを調べてみた" width="640" height="410" > </a> </div> <ul class="dateList dateList-archive"> <li class="dateList__item icon-calendar">2024.09.19</li> </ul> <h2 class="heading heading-archive "> <a class="hc-darkgray" href="https://miofactor.com/2024/09/19/post-36886/">Python関連のことを調べてみた</a> </h2> </li> </ul> </div> </div> <!-- schema --> <script type="application/ld+json"> { "@context": "http://schema.org", "@type": "Article ", "mainEntityOfPage":{ "@type": "WebPage", "@id": "https://miofactor.com/2019/12/09/post-1275/" }, "headline": "Python関連のことを調べてみた2019年12月09日", "image": { "@type": "ImageObject", "url": "https://miofactor.com/wp-content/uploads/2019/10/python-640x410.png", "height": "410", "width": "640" }, "datePublished": "2019-12-09T11:51:11+0900", "dateModified": "2019-12-09T11:51:11+0900", "author": { "@type": "Person", "name": "editor" }, "publisher": { "@type": "Organization", "name": "f@ctor", "logo": { "@type": "ImageObject", "url": "", "width": "", "height":"" } }, "description": "目次 1. spaCy/GiNZAを使って日本語文書のカテゴリ分類を学習する(失敗)2. 1 Clickでエグゼクティブになるボタン3. 日常生活にも役立つ!?コスパ最強の実験計画法をPythonで半自動化4. 【画像で説明】KaggleのNoteBookでpickleをつかい回す5. nfcpyとPaSoRiでNFCタグを読む6. pythonで画像を集めてみただけ7. PythonでMeasu […]" } </script> <!-- /schema --> <!--l-footer--> <footer class="l-footer"> <div class="container"> <div class="pagetop u-txtShdw"><a class="pagetop__link" href="#top">Back to Top</a></div> <div class="widgetFoot"> <div class="widgetFoot__contents"> </div> <div class="widgetFoot__contents"> <aside class="widget widget-foot"><h2 class="heading heading-footer">タグ</h2><div class="tagcloud"><a href="https://miofactor.com/tag/%e3%81%9d%e3%81%ae%e4%bb%96/" class="tag-cloud-link tag-link-13 tag-link-position-1" style="font-size: 8pt;" aria-label="その他 (1個の項目)">その他</a></div> </aside> </div> <div class="widgetFoot__contents"> </div> </div> <div class="copySns "> <div class="copySns__copy"> © Copyright 2024 <a class="copySns__copyLink" href="https://miofactor.com">f@ctor</a>. <span class="copySns__copyInfo u-none"> f@ctor by <a class="copySns__copyLink" href="http://fit-jp.com/" target="_blank">FIT-Web Create</a>. Powered by <a class="copySns__copyLink" href="https://wordpress.org/" target="_blank">WordPress</a>. </span> </div> </div> </div> </footer> <!-- /l-footer --> <script type="text/javascript" src="https://miofactor.com/wp-includes/js/comment-reply.min.js?ver=6.4.1" id="comment-reply-js" async="async" data-wp-strategy="async"></script> <script> function toggle__search(){ extra__search.className="l-extra"; extra__menu.className="l-extraNone"; menuNavi__search.className = "menuNavi__link menuNavi__link-current icon-search "; menuNavi__menu.className = "menuNavi__link icon-menu"; } function toggle__menu(){ extra__search.className="l-extraNone"; extra__menu.className="l-extra"; menuNavi__search.className = "menuNavi__link icon-search"; menuNavi__menu.className = "menuNavi__link menuNavi__link-current icon-menu"; } </script><script>Array.prototype.forEach.call(document.getElementsByClassName("css-async"),function(e){e.rel = "stylesheet"});</script> </body> </html>