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

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

新型コロナウィルスCOVID-19の各国の感染傾向を求めてみよう.

##はじめに
新型コロナウィルスCOVDI-19が世界中に拡がり.その驚異がニュースで毎日・毎時間アナウンスされています.ただその報道の多くは日本の感染状況が中心であり,世界の感染状況となると大きく感染者が増えている一部の国のみに感じます.ただ,そういった世界の悲惨な状況をみると,日本はまだ安心できるように思え,感染が停滞もしくは収束してきているようにも感じます.
でも,実際どういう状況なのか,公開されている情報をもとに,日本を含む世界各国の感染状況を調べてみました.
私が作成したコードは[Github](https://github.com/shirokawakita/COVID-19)においてありますので,よろしければダウロードしてご使用ください.

##新型コロナウィルスの感染状況
 この考察を行うきっかけとなったのがニューヨーク・タイムズの [Which Country Has Flattened the Curve for the Coronavirus?(2020年3月19日報道)](https://www.nytimes.com/interactive/2020/03/

元記事を表示

ディープラーニング初心者がCNNでギター分類をしてみた話

#概要
既にQiita上で試している方もいらっしゃいましたが、自身の勉強も兼ねて
CNN(ResNet)を使ってギター画像の分類をやってみたのでその過程で試したこと、
参考になりそうなことを紹介します。(まとめていないので若干汚いですがコードも載せていきます)

#目次
– 具体的な分類方法
– 前処理について
– 学習方法について
– 学習結果について
– 試して遊んでみる
– まとめ

#具体的な分類方法について
ギター画像をスクレイピングにより取得し、それに前処理を施して画像を水増しします。
水増しした画像を用いてCNNの一手法であるResNetをファインチューニングさせることで、
学習コストをあまりかけずに機械学習させてみようと思います。

####ラベルについて
画像の収集が比較的簡単そうな以下の機種を選びました。

– Fender製
– ストラトキャスター
– テレキャスター
– ジャズマスター
– ジャガー
– ムスタング(含む類似機種)
– Gibson製
– レスポール
– SG
– ES-335

元記事を表示

【python】range関数の使い方を具体例で解説

#【python】range関数の使い方を具体例で解説

感覚的に使っていることが多いrange関数の使い方。

知っておくと幅が広がり便利。

**目次**

1. [range関数でできること](#1-range関数でできること)
2. [range関数の基本構文](#2-range関数の基本構文)
3. [range型とは?](#3-range型とは)
4. [range関数の実行結果の中身を確認する方法](#4-range関数の実行結果の中身を確認する方法一例)
1. ①[listにする](#listにする)
2. ②[配列番号を指定する](#配列番号を指定する)
3. ③[for文で取り出す](#for文で取り出す)
5. [マイナスを使う](#5-マイナスを使う)
6. [範囲内に要素がない場合](#6-範囲内に要素がない場合)
7. [エラー発生事例](#7-エラー発生事例)

##1. range関数でできること

■指定した範囲にある数値を一つの組として算出できる。

例:「初期値:0、範囲の終わり:9、変化量:1」とい

元記事を表示

jupyter-notebookの導入時不具合を一つ解決したのでメモ

 プログラミングほぼ初心者です。パイソン入門の為、jupyter-notebook(Ver6.03)を入れてコマンドプロンプトから起動してみると、エラーがおきました(下記)。調べてる中でなんとなく思いついた方法を試してみたら、うまくいったのでとりあえずのメモです。

★環境:
 Windows10(build:18363.720)
 anaconda(ver 1.7.2)、phython(ver 3.7.6)、jupyter-notebook(ver 6.0.3)

#エラー内容
“`
User\HOGE\anaconda3\lib\site-packages\zmq\backend\cython\__init__.py”, line 6, in
from . import (constants, error, message, context,
ImportError: DLL load failed: 指定されたモジュールが見つかりません。
“`

全然進まないし、ウェブの動きもディレクトリを移動しない状態になり、色々調べていたら、Qiitaで記事を

元記事を表示

【python】関数とメソッドの違い

#【忘備録】pythonの関数とメソッドの違い

オブジェクトの後に「.」でつながり「( )」がつくものはメソッドだと思っていたが、range()は関数と呼ばれている。

調べたところ、メソッドと関数は使い分けられていたので、そのまとめ。

##関数とメソッドの違い

###①メソッド
**特定のクラス**でしか使えない。

例:replaceメソッド
list(配列)には使えないが、str(文字列)には使える。

“`python:listにreplaceは使えない
list = [‘AAA’, ‘BBB’, ‘CCC’]
list.replace(“A”,”B”)

#出力
# AttributeError: ‘list’ object has no attribute ‘replace’
“`

“`python:strなら使える
list = [‘AAA’, ‘BBB’, ‘CCC’]
str(list).replace(“A”,”B”)

#出力
# “[‘BBB’, ‘BBB’, ‘CCC’]”
“`

###②関数
**幅広いオブジェクト**に使え

元記事を表示

某動画サイト風にTwitter検索結果を流す【python】

某アイドルがniconicoでの配信をしていないので、先代アイドルに比べなんとなく生放送が寂しい…
→生放送の推奨ハッシュタグ付きツイートをオーバーレイすればいいのでは?

というわけでPythonでTwitterの検索結果を某動画サイト風に流すプログラムを作りました。

#イメージ図
![ETY6uFZUcAEn4iC.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/240141/3f60969b-ecd5-6f78-cc97-c92f08d205fc.jpeg)
キャプチャは https://www.youtube.com/watch?v=G4aogUF_M_Y より。

#環境
Windows10
Python3.7.6

後述するtkinterの”-transparentcolor”がかなり環境依存なため、Linux,Mac環境では別の記法で実現する必要があります。これらの環境の人は適宜ググってください()

#大まかな流れ

1. TwitterAPIに登録し、ConsumerKey,Con

元記事を表示

勾配法を用いた鞍点探索

# 1. 鞍点とは
 鞍点は勾配が0かつ、ある方向からは極小を、ある方向からは極大をとるような点を指します。機械学習におけるGANや、化学反応経路探索における遷移状態に代表されるように様々な分野で重要なテーマです。
 GANは本物そっくりのデータを生成する生成器(generator)と、本物と生成されたデータを判別する判別器(discriminator)によって構成されています。生成器では極大を、判別器では極小をとるように学習します。
 化学反応では、安定した種々の原料から、ポテンシャルエネルギー曲面上の鞍点を通り、より安定な化合物へと変化します。
 本記事では勾配法を用いた鞍点探索を行います。この手法は簡単なモデルにおいては有効ですが、複雑なモデル(e.g. 量子化学等)ではやや不安定な挙動を示すため、改良出来次第追記します。
 この記事に興味が面白かったらLGTM!をお願いします。

# 2. 鞍点の定義
 鞍点を次のように記述します。目的関数を$y=f(\boldsymbol{x})$、$\boldsymbol{x}=(x_1,x_2,\cdots,x_n)^\rm{T}$、極大

元記事を表示

【Python】Atomで競技プログラミング用の環境構築(input()使えます!)【Mac】

Atomで競プロに必須のPythonの標準入力
`input()`
が使用できる環境構築の情報がググってもあんまりなかった…
ので記事にしてみます!
たぶん全作業30分かかりません!超簡単!
ちなみにMacです。Windowでもできるかは不明!

#python3のインストール
[公式サイト](https://www.python.org/downloads/)からダウンロード
#Atomのインストール、初期設定
以下の記事が参考になりました!
[atom・pythonで競技プログラミングのテスト環境構築](https://qiita.com/crukky/items/73c1322f5929b1ca5834#%E5%8F%82%E8%80%83%E8%B3%87%E6%96%99)
#その他やる事
ホームディレクトリ(同階層にはダウンロードとかデスクトップとかあるよ)
に「python」というフォルダを作ってそのフォルダ内に

– input.txt
– test.py

の2ファイルを作る。
これで準備完了。

イメージはこんな感じ↓
</p

元記事を表示

Python3 で 十字キーが入力された判定をとる方法

## はじめに
この記事を書いた直後に、
https://docs.python.org/ja/3/library/curses.html#constants
このページを見つけました。以下の記事はほぼほぼ虚無です。

## まえがき
自分用のメモです。愚直実装です。
やりたいことは十字キーなど特殊な文字が入力されたことを検知することです。

前提としてUnicode制御文字の知識があることが望ましいです。
[wikipedia](https://ja.wikipedia.org/wiki/%E5%88%B6%E5%BE%A1%E6%96%87%E5%AD%97)

## 詰まったところ
getchは入力を1文字ごとに取得します。しかし、矢印キーは3回文字分の入力がありました。 例えば上矢印は`27 91 65` とはいってきます。このままでは、矢印キーなどの特殊なキーを判定することができないばかりか、望まない入力を受け取ってしまいます。そこで、以下のように実装しました。

## ソース
getch 1文字の入力を受け取る関数
ord は文字をUnicodeに変換する関数、
chr

元記事を表示

【Python】AGC043A(問題読解力とDP)【AtCoder】

しっかり問題は読んで理解しよう!
難しい問題文に出会ってもすぐに諦めないで!

#[AGC043A](https://atcoder.jp/contests/agc043/tasks/agc043_a)
Difficulty:803
強敵!
でも以下のポイント2つをクリアすればこの問題はとける!
①問題読解力
②DP(動的計画法)

##①問題読解力
問題文の後半の「以下の操作」が頭に全く入ってこなかった!
ここでは「以下の操作」の解読をしていきます。
「以下の操作」の部分を問題より引用
>4つの整数r0,c0,r1,c1(1≤r0≤r1≤H,1≤c0≤c1≤W)を選ぶ。
r0≤r≤r1,c0≤c≤c1を満たす全てr,cについて、(r,c)の色を変更する。つまり、白色ならば黒色にし、黒色ならば白色にする。

???

諦めないで!
とりあえず具体例を考えよう!
ノートとペンを用意!
※競プロにノートとペンは必須です!
[【Python】ABC159D(高校数学nCr)【AtCoder】](https://qiita.com/rudorufu1981/items/f9f1e679606d

元記事を表示

Pythonで音声の波形表示

# はじめに
音声の波形を表示するコードを書いた時のメモ。
librosaというライブラリのlibrosa.display.waveplotを使用するのが簡単だが,音声ファイルのデータ数が多い場合エラーが生じるため,素直にmatplotlib.pyplotを使用して表示する方法も記す。
# librosa.display.waveplotを使用する方法
最も簡単な方法。
## コード
“`python
import librosa

def make_waveform_librosa(filename):
y, sr = librosa.load(filename)
librosa.display.waveplot(y, sr=sr)

make_waveform_librosa(“test.mp3”)
“`
## 結果
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/565938/f3fb56d6-b7f2-a043-1b58-cc69b9af39ef.png)
しか

元記事を表示

Dockerを使ってAlpineでMatplotlibを日本語化する

こちらの[Dockerfile](https://github.com/j-hira/NLP100/blob/master/c4/Dockerfile)を作成しました。

# はじめに

大学で自然言語処理の研究室に配属されることになったので[言語処理100本ノック](http://www.cl.ecei.tohoku.ac.jp/nlp100/)を進めています。その問題でmatplotlibを日本語化しなければならない問題があったので、最近勉強しているDockerを使って環境を構築してみました。

# 環境

– Docker 19.03.8

# Dockerfileについて

Dockerで環境構築するにあたって、

– ベースイメージをAlpineにする
– Anacondaを使用しない
– numpyもインストールする

ことを目標にしました。pipでmatplotlibとnumpyをインストールする際に、ライブラリが足りずにエラーが出てしまったので、alpineのパッケージマネージャであるapkでbuild-baseとfreetype-devを追加しました。このうち、bui

元記事を表示

tweepyでURLを含むツイートを除外する【Python】

先にネタバレしてしまうが、RTを除いてAPIで取得する際にフィルタリングすることはできない。(少なくとも私は)
取得結果をローカルで除外する方法を紹介する。

tweepyでコメントだけのツイートを取得したい。
ここで言う単純なコメントだけのツイートとは、URLを含まないツイートのことである。
#サンプルコード
“`python
import tweepy

auth = tweepy.OAuthHandler(CK, CS)
auth.set_access_token(AT, AS)
api = tweepy.API(auth)
result=api.user_timeline(screen_name=”screen_name”,count=n)
for result in results:
print(result.entites)
print(result.text)
“`

例えば、[このツイート](https://twitter.com/T3ahat/status/1242458887799750656)のような引用RTを取得したとすると、`resul

元記事を表示

Docker で AWS Lambda の Python 用 Layer を作成する

AWS Lambda の Python ランタイムでよく使うモジュールを Lambda Layers に登録しようと思ったが、EC2 インスタンスを立ち上げてパッケージを作るのが面倒なので Docker でできるようにした。

## Lambda Layers とは何か
– ファイルを zip で固めたものをアップロードして「レイヤー」として登録することができる
– Lambda Function にレイヤーを追加すると、ランタイムの `/opt` 以下に固めたファイルが展開されて実行時に利用できるになる
– 言語ごとに指定された名前のディレクトリの中にモジュールを入れておくと、Lambda Function から読み込めるようにパスを通してくれる
– 例えば Python ランタイムの場合、レイヤー zip 内の `python` という名前のディレクトリに Python モジュールを入れておくと Lambda Function 側でそのモジュールを `import` で読み込むことができる

詳しくは: [AWS Lambda レイヤー – AWS Lambda](http

元記事を表示

[TensorFlow] AIを車両鉄に入門させてみた

# はじめに

ディープラーニング技術が身近になり、ググってみると色々なものを画像認識させるサンプルがたくさん見つかるようになりました。
結果が分かりやすくて見ていて楽しいので、n番煎じながら自分も何か認識させてみたくなったのですが、動物とか好きな女優さんとかを認識させるのはみんなやってるので、別のネタでやりたい。

ということで、**鉄道車両の画像を学習データとして、入力画像に写っている車両の形式をディープラーニング技術で当てさせてみました。**もっとも、レベル感は電車に興味を持ち始めた小さい子供と同程度だと思いますが。

↓このような車両の画像を入力して「E231系500番台」と当てさせることを目指します。
E231系500番台(山手線)

# 開発環境

– Ubuntu 18.04
– Python 3.

元記事を表示

Pythonで毎日AtCoder #15

### はじめ
[前回](https://qiita.com/taxfree_python/items/855eee1fc022f3d1a678)
今日からC。書くの忘れていたので一問だけです。

### #15
[問題](https://atcoder.jp/contests/abc085/tasks/abc085_c)

**考えたこと**
昨日のB問題の類題です。forループを3つから2つに減らすことでTLEを防いでいます。

“`python
n ,y = map(int,input().split())

for i in range(n+1):
for j in range(n+1):
noguti = (y – (i * 10000 + j * 5000)) // 1000
if noguti + i + j == n and noguti >= 0:
print(i,j,noguti)
quit()

print(-1,-1,-1)
“`
ちなみに、Python3→1567ms、

元記事を表示

tkinterで背景が透過するFrameを作る【Python】

tkinterで背景が透明なFrameを作る。

#環境
Windows10
Python3.7

※本記事ではWin環境のみ扱います。他OSでは正常に動かない可能性が高い。
#サンプルコード
“`python
from tkinter import ttk
import tkinter

root=tkinter.Tk()
root.wm_attributes(“-transparentcolor”, “snow”)
#root.attributes(“-alpha”,0.5)
ttk.Style().configure(“TP.TFrame”, background=”snow”)
f=ttk.Frame(master=root,style=”TP.TFrame”,width=”400″,height=”300″)
f.pack()

label=ttk.Label(master=root,text=”薄くならないで…”,foreground=”red”,background=”snow”)
label.place(x=150,y=150)
root.mainloop()

`

元記事を表示

10分間で画像認識モデル構築byKeras~機械学習への第一歩~

## はじめに

### この記事を読むと?
**難解でとっつにくいイメージのある機械学習について、実際にコードを動かしながら、最短で体験することができます。**

### なぜこの記事を書いたのか
機械学習やディープラーニング学ぶ方(またはこれから始める方)が増えています。
今は優れた書籍やオンライン上の教材が豊富にあり、多様な選択肢があります。素晴らしい時代ですね。
しかし残念ながら、何かしらの教材で挑んでみたものの、実際に機械学習を実装する手前で挫折してしまう方も少なくないと感じています(そしてそれは本人の能力のせいではなく、わずかな周囲の環境やタイミングといった運によるものが大きいと思います)。
機械学習を習得するためには、PythonやRといったプログラミング言語の習得はもちろん、ある程度の数学の素養や、環境構築が必要です。それらでつまずき、「自らの手で機械学

元記事を表示

5代血統表内に漢字の馬名が含まれるここ最近の競走馬を調べる【スクレイピング】

#はじめに
(以下、競馬用語を注釈無しで使用していきますのでご了承下さい。)

なんとなく5代血統表に漢字の馬名が入っている馬がどれくらいいるのか気になったので競馬データベースサイト[「JBISサーチ」](https://www.jbis.or.jp/index.html)のページをスクレイピングして調べてみました。

近年活躍した競走馬で、5代血統表内に漢字の馬名がある馬といえば[ゴールドシップ](https://www.jbis.or.jp/horse/0001104811/pedigree/)が一番有名でしょう。
![FireShot Capture 001 – 血統情報:5代血統表|ゴールドシップ|JBISサーチ(JBIS-Search) – www.jbis.or.jp.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/253705/ff43ca2a-a8dc-b898-0dfa-69ffda89bbbf.png)
5代母が1959年生の「風玲」という馬です。

昔は競走馬名にカタカナ使用の制限が

元記事を表示

100日連続実装生活 2日目

#2日目
##GoogleAnalytics StandardをBigQueryにエクスポートする
GoogleAnalytics(以降 GA)をBigQueryにエクスポートしたいけど、GA360は高くて無理!
って思っていたので、GAのAPIを使って、GCS経由でBigQueryにエクスポートするのを実装しました。
まだ、少ししか試していないので、完ぺきではないかと思いますが、毎日投稿する関係上、悪しからず…笑
##大まかな流れ
1. GA APIを使ってrawデータ取得
2. pythonでcsvに整形
3. GCSにエクスポート
4. GCSからBigQueryにエクスポート

この流れで紹介していきます!

##GA APIを使ってrawデータ取得
[GA API クイックスタート](https://developers.google.com/analytics/devguides/config/mgmt/v3/quickstart/service-py?hl=ja)
上のページを参考にクイックスタートをパクります。
すると、rawデータを取得してくれるではありませんか!

元記事を表示

OTHERカテゴリの最新記事