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

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

質問です!(python,django)簡単

HTML上で数値を受けとって、計算した結果を出したいのですが、計算がうまくいきません。
何か方法はありますか?

本当はただ計算するだけでなくて、2つの数値から人にあった食べ物を表示する予定です!

エラー
![スクリーンショット 2019-11-19 11.36.26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/479915/87730e48-afd9-bd35-531f-5c746207bc81.png)
html
![スクリーンショット 2019-11-19 11.33.24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/479915/ce05e920-7a04-fc32-22a2-85c6fb51dc23.png)
viwe
![スクリーンショット 2019-11-19 11.33.04.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com

元記事を表示

マハラノビス距離の求め方

## マハラノビス距離

“`math
d=(x-\mu)^T\Sigma^{-1}(x-\mu)
“`

$x$はデータ群との距離を求めたいベクトル。
$\mu$はデータ群の平均値。
$\Sigma^{-1}$はデータ群の共分散行列の逆行列。
コレスキー分解を使うと、以下のように式変形できる。

“`math
\begin{eqnarray}
d &=& (x-\mu)^T\Sigma^{-1}(x-\mu) \\
&=& (x-\mu)^T(LL^T)^{-1}(x-\mu) \\
&=& (L^{-1}(x-\mu))^T(L^{-1}(x-\mu)) \\
&=& z^Tz
\end{eqnarray}
“`

$L$はコレスキー分解によって得られる下三角行列。
$$z=(L^{-1}(x-\mu))$$ として、これを求めればあとは内積を計算するだけ。

## 実装

以上をpythonで実装します。

“`python
import numpy as np
from scipy.linalg import solve_triangular

def

元記事を表示

さくらのサーバーによるpython3の動作

さくらのサーバーで公式に対応しているのはpython 2.7
python 3系列も手動でインストールすれば一応は使える。
python 3.6はpipが古いためエラーを起こして更新できない。
python 3.7.5はpipが動作する。

元記事を表示

エンジニアが披露宴の余興を頼まれたら

先日、知人の結婚披露宴にて初めて余興というものを依頼され、なんとか乗り切ったのでその時のこと。

# どうしよう
なにか持ちネタがあるわけでもない。
歌や踊りが達者なわけでもない。
ムービーは多少作れるけど、新婦側の余興でやるらしい。。

プログラミングしかない!!

# やったこと
**『HAPPINESS SCOUTER(ハピネス スカウター)』**

LINEで写真を送ると、写っている人の表情を認識して**『幸せ戦闘力』**を測定します!!というもの。
([前回の記事](https://qiita.com/keeey999/items/3f3975770bba1ce19817)で書いた、Amazon Rekognitionを使用したLINE BOTの延長です)

送ってもらった写真の一覧と詳細を見れるページも作成し、
一覧ページでは幸せ戦闘力のランキング形式で表示するようにしました。

LINEの画面
57899.jpg深層学習とかでのCUDAエラー「Attempting to fetch value instead of handling error Internal: failed to get device attribute 13 for device 0: CUDA_ERROR_UNKNOWN: unknown error」への対処

#目的

GPUを使って深層学習で学習させようとした場合に、
以下のようなエラーが出る場合がある。

“`
2019-11-18 04:16:42.405806: F tensorflow/stream_executor/lib/statusor.cc:34] Attempting to fetch value instead of handling error Internal: failed to get device attribute 13 for device 0: CUDA_ERROR_UNKNOWN: unknown error
“`

このエラーの原因をネットで検索しても、
あまり良い情報がない。
単に、英語とか中国語が理解できていないだけかもしれないが。

自分なりに理解できたことを示す。

参考程度に環境を示す

“`
tensorflow 1.14.0
tensorflow-estimator 1.14.0
tensorflow-gpu 1.14.0

“`

#エラー対策

tensorflowのバージョンとかの可能性も

元記事を表示

【備忘録】テキストマイニングからの形態素解析

一旦の自分用メモです。また後日補足を記載します。

“`py
from MeCab import Tagger
t = Tagger()
text = “””
scaffoldとは?
Railsの開発に必要なルーティング、コントローラ、ビューの作成に加え、基本的なアクションの設定なども自動ですべてやってくれる便利ツールのこと

【個人的に感じたscaffoldの良さ】
①コントローラの作成だけでなく、7つの基本アクションも自動で設定してくれる
scaffoldで作成されたコントローラには、「index」「show」「new」「edit」「create」「update」「destroy」の7つのアクションが自動で定義されています。そのため、自分でアクションを設定しなくても、すぐにデータの参照や新規作成、変更、削除を行うことができます。

②作成されたコントローラに対応するルーティングも自動で設定してくれる
scaffoldコマンド後のroutes.rbには、「resources :コントローラ名」という記述が追加されており、新たに作成されたコントローラに対応するルーティングが自動で設定

元記事を表示

【備忘録】形態素解析からのWordCloud

pythonファイルに入れていた文章を別ファイルへ移行

“`textmining_source.txt
scaffoldとは?
Railsの開発に必要なルーティング、コントローラ、ビューの作成に加え、基本的なアクションの設定なども自動ですべてやってくれる便利ツールのこと

【個人的に感じたscaffoldの良さ】
①コントローラの作成だけでなく、7つの基本アクションも自動で設定してくれる
scaffoldで作成されたコントローラには、「index」「show」「new」「edit」「create」「update」「destroy」の7つのアクションが自動で定義されています。そのため、自分でアクションを設定しなくても、すぐにデータの参照や新規作成、変更、削除を行うことができます。

②作成されたコントローラに対応するルーティングも自動で設定してくれる
scaffoldコマンド後のroutes.rbには、「resources :コントローラ名」という記述が追加されており、新たに作成されたコントローラに対応するルーティングが自動で設定されています。

③コントローラで定義されたアクション

元記事を表示

Sudachi 同義語辞書をPandasで読み込んで同義語検索してみた

2019年11月11日、形態素解析器[Sudachi](https://github.com/WorksApplications/Sudachi#sudachi-%E6%97%A5%E6%9C%AC%E8%AA%9Ereadme)を開発しているWorksApplicationsから同義語辞書がリリースされました!

同義語辞書の用途は主に、文書検索やチャットボットで表記揺れを吸収するのに使われます。

今回はこの辞書の中身について、PythonのライブラリであるPandasを使って調べてみました。

# 環境
– Ubuntu (Windows 10 WSL)
– Python3.7.3
– pandas 0.25.3

# Sudachi同義語辞書のダウンロード
“`
$ wget https://raw.githubusercontent.com/WorksApplications/SudachiDict/develop/src/main/text/synonyms.txt
“`

# 読み込み
[ドキュメント](https://github.com/WorksApplicat

元記事を表示

pythonのKeyErrorを何とかする

# はじめに
Pythonを触っていて、

“`
“KeyError: None”
“`

というエラーが出た。原因と修正方法をメモ。(コメントでいただいた内容に修正しました。)

# 原因
`foo[‘bar’]`と、`bar`というキーを指定しているが、そのキーが存在していないと考えられる。

# 修正方法
タイプミスの可能性があるため、自分でキーを把握しているorプログラム内にキーが記述されている場合は見直す。
無い場合は、適切な位置に以下のコードを挿入する。

“`python:

print(foo.keys())
…#ここでエラーが起こる
“`

`[‘bar’]`部分を適切に修正する。

元記事を表示

daily memo

# macでmecabを使う
まずはmecabのインストール。terminalで以下を入力

“`terminal
brew install mecab mecab-ipadic
“`

mecab-ipadicはmecabで使用する辞書

元記事を表示

Pythonでsvgファイルをpng/icoに変換する

## はじめに

* デザインとかフロントのことはよくわからない。
* とある作業中、favicon 用に ico ファイルが必要だけど、フロントの人に svg しかもらっていなかった。
* 外部サイトで変換ツールがあるのは知っているけど一応仕事のファイルなので使いたくない。
* わざわざ ico 作ってって頼むのもあれだし、とりあえず手元で手っ取り早くやるために Python でやる方法を調べてみた。
* この方法が妥当なのかとかはわからないけど、とりあえずできることはできる。

## 環境

* Python 3.6.6

## How to do it

軽くググってみたら、svg -> png -> ico の順に変換している例が多かった。

### svg -> png

svg -> png の変換は [cairosvg](https://cairosvg.org/) ってやつを使えばできるらしい。

インストール

“`
$ pip install cairosvg
“`

実行ファイルが入っているようなのでそのまま実行。

そしてエラー…

“`
$

元記事を表示

Python から Azure CosmosDB を操作する Part.2

前回の続きで、もう少しコードを深掘りしていきたいと思います。
前回議事→https://qiita.com/komiyasa/items/ae34fd9fec46c0e01b35

#チュートリアルのコード
以下は全体間。この全体では、データベースの名前、コンテナーの名前を設定します。具体的な中身については別の Python ファイルで設定しているみたいです。

“`Program.py
from azure.cosmos import exceptions, CosmosClient, PartitionKey
import family

# Initialize the Cosmos client
endpoint = “XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX”
key = ‘XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX’

#
client = CosmosClient(endpoint, key)
#

# Create

元記事を表示

[ゼロから作るDeep Learning]Momentum手法とAdaGrad手法の実装

#はじめに
この記事はゼロから作るディープラーニング 7章学習に関するテクニックを自分なりに理解して分かりやすくアウトプットしたものです。
文系の自分でも理解することが出来たので、気持ちを楽にして読んでいただけたら幸いです。
また、本書を学習する際に参考にしていただけたらもっと嬉しいです。

#Momentum手法実装

“`python
class Momentum:
def __init__(self, lr=0.01, momentum=0.9):
self.lr = lr # 学習率
self.momentum = momentum # モーメンタム定数
self.v = None # 速度

def update(self, params, grads):
if self.v is None: # 最初だけ各パラメータの速度を初期化する
self.v = {}
for key,val in params.items():

元記事を表示

Nginx の設定ファイル

Nginx で PHP,Python,Let’s Encrypt を使う時の設定ファイルです。

Ubuntu 18.04 で確認しました。
>サーバー名は、example.com とします。

“`text:/etc/nginx/sites-available/default
#
server {
listen 80 default_server;
listen [::]:80 default_server;

root /var/www/html;

index index.html index.htm index.php;

server_name _;

location / {
try_files $uri $uri/ =404;
}

#
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:

元記事を表示

話題の「固有値から固有ベクトルを求める」を検証する

# 目的
「行列の固有値のみから固有ベクトルを求めることができる」というarxivの論文がTwitterで話題になっていました。

データ収集からディープラーニングまで全て行って競馬の予測をしてみた

# 概要
某T大学で情報系を専攻している学生です。Qiitaの記事を色々見ていたら、こんな記事を発見。

– [ディープラーニングさえあれば、競馬で回収率100%を超えられる](https://qiita.com/yossymura/items/334a8f3ef85bff081913)

この記事の回収率100%達成に関しては、購入シミュレーションした馬券の数が少ないので、他の期間でも成立するのかはわかりません。ソースコードも有料なのでどうやっているのかの詳細もわかりません。しかし、自分で競馬予測をしてみても面白そうだと思ったので、勉強するつもりで実際にやってみました。

データ収集・分析・予測のすべてを行うことになるのでかなり勉強になります。

## なぜ競馬なのか?
もしかしたらお金になるかもしれないという欲もありましたが、競馬は控除率が高いらしいのであまり期待はできません。
大きな理由としては最近話題になっていたから・ディープラーニングをやってみたかったから、ですかね。

競馬を選んだ他の理由としては、

– レース結果が観客によって左右されることが少ない
– 説明変数が足りて

元記事を表示

アニメのキャラクターページをBeautifulSoupとSeleniumでスクレイピングして、アニメ顔を分類する

アイカツ!シリーズ分析結果の描画でキャラクターの顔写真を使いたいなあと思ったけど、人数が多くて手運用が面倒くさい。
なのでBeautifulSoupでスクレイピング、SeleniumでPrintScreenを取得。
PrintScreenからOpenCVでキャラクターの顔を切り取るまで自動でやることにした。

## スクレイピング部

### まずは事前準備系

“`python
from urllib import request
from bs4 import BeautifulSoup
from selenium import webdriver
import pandas as pd
import time
import os
import shutil
import itertools

# OpenCVは日本語ファイル名を許容していないのでマッピング用のファイルをロード
df=pd.read_csv(“C:/XXXX/aikatsu_name_romaji_mapping.tsv”, sep=’\t’, engine=’python’, encoding=”utf-8

元記事を表示

ToDoリスト作り[Python&Django]

#目的
[参考][Djangoで作るToDoリスト](https://qiita.com/acecrc/items/a4302ca6cf0897c45302)
pythonで簡単なものを作ろうと思った際に、ToDoアプリが良いのではないかと思い挑戦したみた。

– 機能
– 一覧表示
– 詳細表示
– リストの作成&編集
– 削除

この4つの機能を持つToDoアプリを作成していきます。

#環境
pythonとDjangoのバージョンは以下の通りである。
Djangoは後の手順の中で仮想環境にインストールする。

“`
$ python -V
Python 3.7.3
“`

“`
$ pip list
Package Version
———- ——-
Django 2.1.8
“`

#作成手順
大雑把に分けると
1. 開発環境を整える
2. ToDoアプリ作成(python編)
3. ToDoアプリ作成(html編)
4. マイグレーション
5. 動作確認
の5ステップ
#1.開発環境を整える
##仮想

元記事を表示

IoT プラットフォーム「リモッテ」でアプリを実行してみた

### 準備
[前回](https://qiita.com/remotte_jp/items/94fb73db9fb98e9e10a2 “IoT プラットフォーム「リモッテ」でステーションを登録してみた”)までで、管理ツールを表示するところまで終わった。画面に管理ツールが開かれていれば準備オッケー。
### 「リモッテ・ストア」からアプリをダウンロード
管理ツールの画面の、「ストアへ」ボタンをクリックし、リモッテ・ストアを開く。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/491154/aabc5549-3344-4166-326d-d8f88da22dd8.png)
「アプリのストア」が表示される。今回は最も基本的なアプリの1つである「ステーションの管理」を試してみることにしよう。このアプリはステーションの状態監視および遠隔から再起動が出来るアプリで、CPU とメモリーの使用率、CPU の温度、バッテリーの状態、ステーションのイベントログ、接続中のユーザーのリストなどをリアルタイムに

元記事を表示

OTHERカテゴリの最新記事