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

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

Numpyのみでカーネル回帰

![20190426185334.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/295228/7b7d0469-3ead-455b-af39-57d0647f37b2.png)

 カーネル法は,非線形データ解析に対する強力な武器です.ソフトマージンSVM・ガウス過程・クラスタリングなどのアルゴリズムの基本要素として頻出します.このポストでは,カーネル法を使って回帰問題を解く手続きを,Pythonで再現してみました.

**TL;DR**
Please check [this repository](https://github.com/yumaloop/KernelRegression) and see codes.

※ なお,カーネル法に関する知識は,以下の本を参考にしています.

pywinauto の使い方メモ

pywinauto の使い方メモ

# メモ帳で動作確認

## アプリを起動(メモ帳)

“`python
c:\ python
Python 3.8.5 (tags/v3.8.5:580fbb0, Jul 20 2020, 15:57:54) [MSC v.1924 64 bit (AMD64)] on win32
Type “help”, “copyright”, “credits” or “license” for more information.
>>>
>>> from pywinauto import Desktop, Application

# メモ帳を起動
app = Application().start(‘notepad.exe’)
“`

## バージョン情報を表示

メニューの「ヘルプ」の「バージョン情報」を選択してバージョン情報画面を表示

“`python
# ヘルプ -> バージョン情報 を表示
app[u”無題メモ帳”].menu_select(u”ヘルプ -> バージョン情報”)
“`

![notepad2.png](https:/

元記事を表示

自然言語処理の素人が提出レポートの類似度を評価してみた記録

### 0. 事前に行ったこと

「AIの医療応用研究事例について一つ調べ、メリットと課題をまとめよ」というレポート課題をgoogle classroom上で課し、gdocで提出してもらったレポートを[前回の記事](https://qiita.com/shigeyuki-m/items/5538824c6c0cd95e51d7)に記載した方法で抽出した。

続いて、類似度評価のために、4種類のよく似たレポートを自作した。表現の改変(改悪)は、エキサイト日英翻訳→google英日再翻訳をした文章をベースに、提出されたレポートを参考にして読みづらい日本語表現アレンジを加えた。

**ダミーレポート1 原本 学籍番号:99999**

*・人工知能の医療応用事例
 ゲノム情報と電子カルテ情報から腹部大動脈瘤を予測する研究結果が2018年にスタンフォード大学の研究グループから発表されている。
腹部大動脈瘤は頻度が最も高い大動脈瘤であり、動脈硬化などの原因によって通常直径約2cmの腹部大動脈が3cm以上に膨張した状態を指す。破裂するまで自覚症

元記事を表示

klassってなんやねんってお話

pythonやrubyで、ライブラリのソースコードとか眺めてるとちょいちょいでてくる、
`klass`というキーワード。

感覚的に「英語でこんな単語はないよな・・・」と思いながらも一昔前までスルーしてたのですが、最近またとあるrubyのライブラリの中身をハックじみたことしてたらまたでてきたので調べたのです。

## classって名前がつけられないのでklass

何言ってるかわからないかもしれませんが、例えば

“`ruby
def inspect_class(class)
puts class.class
end

inspect_class(‘a’)
“`

というコードを書きたいとき。
これはシンタックスエラーになってしまいます。
なぜなら`class`というキーワードはrubyでは予約後としてすでに定義されているため。

そういうときに、

“`ruby
def inspect_class(klass)
puts klass.class
end

inspect_class(‘a’)
“`

こうかくとちゃんと通ります。

イメージ的に、

* クラス名の

元記事を表示

ディープラーニング1 深層学習の実践

[Aidemy](https://aidemy.net/) 2020/9/30
#はじめに
 こんにちは、んがょぺです!バリバリの文系ですが、AIの可能性に興味を持ったのがきっかけで、AI特化型スクール「Aidemy」に通い、勉強しています。ここで得られた知識を皆さんと共有したいと思い、Qiitaでまとめています。以前のまとめ記事も多くの方に読んでいただけてとても嬉しいです。ありがとうございます!
 今回は、ディープラーニングの一つ目の投稿になります。どうぞよろしくお願いします。

*本記事は「Aidemy」での学習内容を「自分の言葉で」まとめたものになります。表現の間違いや勘違いを含む可能性があります。ご了承ください。

今回学ぶこと
・深層学習(ディープラーニング)について
・手書き数字を分類するモデルをつくる

#深層学習(ディープラーニング)について
##深層学習(ディープラーニング)とは
・深層学習(ディープラーニング)とは、機械学習の一種で、__ディープニューラルネットワーク__と言うモデルを使ってデータの分類や回帰を行うことを指す。生物の神経(ニューロン)ネットワークを参

元記事を表示

axis = 0, axis =1 について

今回はPython(numpy ならびに pandas)での axis についてお話していきます。

## ■ axis の基本ルール

axis = 0:行方向(行01から02へ向かう方向)→ 縦方向
axis = 1:列方向(列AからBへ向かう方向)→ 横方向
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/725082/b40fdde9-15cb-dfeb-f41f-85882ee6ae1a.png)

## ■ 実際に確かめてみる
pandas における DataFrame を2つ用意してみます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/725082/2e73b698-96cb-f78d-dfa6-f7c7a4d8f4a8.png)
ここで concat(データフレームの連結)を行います。
![image.png](https://qiita-image-store.s3.ap

元記事を表示

[2020年9月版] PythonでGmail APIを利用するまでの手順を解説

今回はPythonでGmail APIを利用するまでの手順を解説します。
Gmail API を利用するまでに、APIを有効化したり、認証情報を作成したり、ライブラリをインストールしたりとやることが多いので、備忘録として書きました。
# Google Cloud PlatformでGmail APIを有効化
 Gmail APIを利用するにはGoogle Cloud Platform(GCP)でAPIを有効化する必要があります。GCPにはこちら( https://console.cloud.google.com/ )からアクセスしてください。

初めてアクセスすると下記の画面が出てくると思うので利用規約に同意し、「同意して実行」をクリックしてください。
![Gmail API1 (2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/646368/e4187430-dfcf-6eff-171c-678cb9c33ce3.png)

「プロジェクトの選択」から
![Gmail API2 (2).png](h

元記事を表示

DockerにPython3.6をインストールする

#概要

Ubuntu(20.04)コンテナに、Python3.6をインストールする。

#スクリプト内容

## 前準備
“`
apt-get update
apt-get install wget gcc make zlib1g-dev libssl-dev
“`

## Pythonインストール
“`
wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz
tar zxvf Python-3.6.1.tgz
cd Python-3.6.1
./configure –prefix=/usr/local/python
make && make install
“`

##リンク作成
“`
ln -s /usr/local/python/bin/python3.6 /usr/local/bin/python
ln -s /usr/local/python/bin/pip3.6 /usr/local/bin/pip
“`

##Pip更新
“`
pip install –upgrade pip
“`

元記事を表示

特定のキーワードを含むツイートを毎日収集してcsvに保存するPythonプログラム

## 目的
ツイッターなどのSNSの情報が新型コロナウイルス感染クラスタの発生リスクモニタリングに使えないかというアイデアがあり、「今日 飲み会」などのキーワード検索によるツイートの収集を行いたい。無料の検索APIでは1週間前のツイートしか遡れないので、今後の研究に活かせる可能性を考えて毎日データを自動で取れる仕組みを構築する。

新型コロナウイルス感染クラスタの発生リスク評価に使える検索ワードの良いアイデアがあれば是非コメント下さい!

## 参考URL
本家
https://developer.twitter.com/en/docs/twitter-api
とてもわかりやすかった解説サイト
https://gaaaon.jp/blog/twitterapi
本記事が上記リンクでいうところの「やってみた系自己満コード」にすら達していないのが悲しいので、場合によっては記事を非公開にするかもしれない。

## 方法
下記の`nomikai_tweets.py`を実行する。

“` python
# coding: utf-8
# nomikai_tweets.py

im

元記事を表示

Django シフト表をスクロール固定したりしたいけど…

現在の月間のシフト表がこのような状態です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/701342/89e76d5f-ad9a-4d18-d5b1-c4fe500520ea.png)

下の方にいくとどれが何日なのかわからなくなっていしまっています。
HtmlとCSSはほぼ勉強したことがないので、おしゃれ表 HTML とかで調べて編集するのですが、どうにもこうにもうまくいかない…

Djangoのルール、Python、HTML、CSS、そのうちjavascriptも覚えていかないと便利なWebアプリは作成できないかもしれないですね

本当にWebアプリはハードルがVBAよりはるかに高いですが、何事も0⇒1が一番大変な時期なのでHTML、CSSを覚える一番大変な状況と思って頑張ります(⌒∇⌒)

修正しようとしているHtmlですが、うまくいかなかったらバックアップから戻す可能性もあります…

“`html:schedule/month.html
{% extends ‘schedu

元記事を表示

【容量インジケーター,ガントチャート,UI】plotlyで動的な可視化をする【python,ゲージの表示,ガントチャート】

python==3.8
plotly==4.10.0

ダッシュボード作成時に役立つtipsとしてインジケーターとガントチャートの紹介

#インジケーター

##基本

インジケーターを表示させるにはgraph_objectsのインジケーターから

“`python
import plotly.graph_objects as go
fig = go.Figure()

fig.add_trace(go.Indicator(
mode = “number+delta”,
value = 300,
number = {‘prefix’: “$”},
delta = {‘position’: “top”, ‘reference’: 320}))
fig.show()
“`

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/275572/1bedca34-5709-9988-f34a-c121b466b331.png)

##図の上に表示

元記事を表示

総務省「日本産業分類」CSVをあるだけ取ってくる

##はじめに
にゃーん??
総務省「日本産業分類」CSVをあるだけ取ってくるやつです。

##このコードは何がいいのか
[日本標準産業分類](https://www.soumu.go.jp/toukei_toukatsu/index/seido/sangyo/index.htm)
– 階層がちょっと深い
– 現行と過去があって提供コンテンツにばらつきがある
– マーケティング実務で役に立つ=ほしいのは、最新の「分類項目名」CSVだけ
– 日本標準産業分類は数年おきに改定がある=ほしい先のURLが変わる
– ファイル名の採番がお役所独自のもので覚えていられない
– ソースコードを少し変えれば、公開されているPDFも取得できる

上記にすべて対応しています。

##動作環境
– Python 3.7.3
– Debian GNU/Linux 10 \n \l (#RaspberryPi 4)

##コード開陳
“`
#!/usr/bin/env python3
# coding: utf-8

### import

import os
import re
import sys
impo

元記事を表示

【Python】PowerPointに2クリックでTeX形式を挿入するGUI【PowerPoint】

#はじめに
数式を多用するスライド資料を作るのにボタンメニューでポチポチ入力してられっかよ
って思いますよね。
とはいえパワポでTeXを使おうとすると無駄なひと手間がかかって面倒です。

こんな問題は、**ごく単純なツールを作って解決**してしまいましょう。
(Windowsのみ対応です)
#出来たもの
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/501281/84c27a37-1edb-4392-3847-42b52611950d.png)
   $↓$ 挿入ボタンをクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/501281/02af02a8-c958-73b1-d988-439c72d50c11.png)
一応カーソルキー上下で履歴機能もついてます。

#コード

“`python
import tkinter
from tkinter import ttk
import

元記事を表示

メモ: terminal でグラフ描画 termplotlib

## インストール

“`sh
apt install -y \
python3-scipy \
python3-seaborn \
python3-gnuplot \
python3-pip

pip install termplotlib
“`

## グラフ描画

“`py:graph.py
import termplotlib as tpl
import numpy as np

x = np.linspace(0, 2*np.pi, 100)
y = np.sin(x) + x
fig = tpl.figure()
fig.plot(x, y, width=60, height=20)
fig.show()
“`

![スクリーンショット_2020-09-29_11-43-09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25728/37765fbc-586b-2b3a-f334-336bbac721c7.png)

## csvを利用

“`cs

元記事を表示

Python3で書く2,8,16進数,複素数

#開発環境
Python 3.8

#2,8,16進数の書き方

数値の前に以下の文字列を付け加えます。
・2進数 : 0b
・8進数 : 0o
・16進数 : 0x

“`python:app.py
num1 = 0b11
# 2進数なので3
num2 = 0o11
# 8進数なので9
num3 = 0x11
# 16進数なので17
“`

#複素数の書き方
虚数にjを付け加えます。

“`python:app.py
a = 1 + 2j
# 実数1と虚数2
“`

#おまけ
2,8,16進数の出力方法

“`python:app.py
print(bin(3))
print(oct(9))
print(hex(17))
“`
#まとめ
あまり使う機会はないかもしれませんが、お役に立てると幸いです。

元記事を表示

ReportingAPI + Cloud Functionsで各ページのアクセス数を取得

#目的
ReportingAPI + Cloud Functionsを使用して各ページのアクセス数を取得する方法を記載します。
Google Analyticsのデータ取得にはReporting API v4(google-api-python-client)を使用します。

#環境
google-api-python-client: 1.12.2
oauth2client: 4.1.3

#流れ
1.Google API Consoleの設定
2.Google Analyticsの設定
3.Analyticsデータの出力

##1.Google API Consoleの設定
Google API ConsoleからReporting API v4を有効にします。
この際に秘密鍵をダウンロードしサービスアカウントのメールアドレスを控えておきます。

元記事を表示

Python + Janomeでマルコフ連鎖人工無脳(3)尾崎放哉自由律俳句ジェネレータ

#前書き
前々回
[Python + Janomeでマルコフ連鎖人工無脳(1)Janome入門](https://qiita.com/GlobeFish/items/14587d79dcef8722fe57)
前回
[Python + Janomeでマルコフ連鎖人工無脳(2)マルコフ連鎖入門]
(https://qiita.com/GlobeFish/items/17dc25f7920bb580d298)

いよいよ本格的に文章生成を実装します。
文章生成に使うネタはなんでもよいのですが、あまり理路整然としすぎた文章だと
支離滅裂さが際立ってしまう印象です。ふわっとハイコンテクストで、程よい長さが望ましいのです。
そこで、今回は尾崎放哉の自由律俳句を用意してみました。「咳をしても一人」の方です。

#データ入力
まず、テキストファイルを用意します。今回はこちらを用意しました。
[尾崎放哉選句集(青空文庫)](https://www.aozora.gr.jp/cards/000195/card974.html)

DLして、テキストファイルを同じディレクトリに入れます。
中身はこんな感じ

元記事を表示

xgcmを使ったσ座標からz座標への鉛直座標変換

pythonの[xarray](https://xarray.pydata.org/en/stable/)は多次元配列を座標付き扱うライブラリで、netcdfにも対応しており、大気海洋モデルの解析に非常に便利である。しかし、緯度経度座標に特化したライブラリではないので、例えば等緯度経度座標のグリッドでも高緯度ではグリッドが小さくなるということを計算に入れてはくれない。それを補うライブラリの一つが[xgcm](https://xgcm.readthedocs.io/en/latest/)である。これによって微分・積分操作が非常に楽になる([例](https://xgcm.readthedocs.io/en/latest/example_mitgcm.html))。

[Version 0.5](https://xgcm.readthedocs.io/en/latest/whats-new.html)より、鉛直座標変換が可能になったと知った。

元記事を表示

エンジニアの本棚卸し

#目的

自分がインプットしてきた技術関連知識の足跡整理。
文字にするとキリがないので、~~面倒ではない~~視覚的に集約されているという点で本棚の書籍写真でペタペタ整理。

#足跡
##入り口はC言語
![C言語、C++](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/188787/280209d5-2ae3-8ba3-dadf-cb5e5f82bc3d.jpeg)

猫でも分かるC言語で自分が猫未満であることを悟り、苦しんで〜みたいな名前の書籍を読んだ記憶。
DXLibraryを使用してゲーム製作をしたり、遺伝的アルゴリズムでレースゲームのゴール時間を最適化したり、TCP/IPレイヤをイジったり、二度デストラクタを呼び壊したり、ダングリングポインタを参照して壊したり、壊したり。

##Webアプリケーションに興味が出てPHPあたり
![PHP、JavaScript](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/188787/851e6d

元記事を表示

文字列をひらがなで分割したい

# 文章をひらがなで分割
漢字の文章のルビを振ることになった。その過程で作った。
以下コード

“`python
def hiragana_split(s):
# 元の文章をひらがなで分割
# 50音のリスト
fifty_text = [chr(i) for i in range(12353, 12436)] + [‘。’, ‘、’]
split_list = []
# ひらがなかどうか
start_point = 0
section = ”
for i in range(len(s) – 1):
if not (s[i] in fifty_text) == (s[i + 1] in fifty_text):
split_list += [s[start_point:i + 1]]
start_point = i + 1
return split_list

if __name__ == ‘__main__’:
s = ‘どこで生れたかと

元記事を表示

OTHERカテゴリの最新記事