Python3関連のことを調べてみた2021年06月25日

Python3関連のことを調べてみた2021年06月25日

【Selenium】PythonでSeleniumを使う際に役に立つ(かも)Tips

# 概要
この記事ではPythonでSeleniumを使う際に役に立つ(かもしれない)Tipsを紹介していきます。

# webdriver-managerで最新のwebdriverを自動取得
Seleniumを運用する際に必要となるwebdriver、定期的に更新する必要があったりと面倒です。

そんな時に`webdriver-manager`を使用することで自動で対応したバージョンのwebdriverを取得してくれます!
使い方も非常にシンプルでdriverを定義する際に指定するだけ。

“`python
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager

# chromedriverのパスを指定する代わりにwebdriver_managerを呼び出す
driver = webdriver.Chrome(ChromeDriverManager().install())
“`

また、Firefoxの場合は、

“`python
from seleniu

元記事を表示

SageMaker 独自アルゴリズム作成方法

今回はsagemaker-training-toolkitを使用して独自アルゴリズムをSageMaker上に作成する方法をまとめる.

予めインストールし,設定しておくパッケージ

– Cli
– [Docker](https://docs.docker.com/get-docker/)

**Dockerについて**

> unix ///var/run/docker.sock. is the docker daemon running?

上のエラーが出た場合はdocker.sockに関する権限を設定しておく.

“`bash
$ sudo chmod 755 /var/run/docker.sock
“`

## Docker imageの作成

独自アルゴリズムを使用する場合,DockerコンテナをECR上に作成する必要がある.今回はAWS提供の[sagemaker-training-toolkit](https://github.com/aws/sagemaker-training-toolkit)を使用する.

1 :train.pyを作成

元記事を表示

AI物体検出を活用したレシピ紹介

# はじめに

はじめまして、Axrossを運営している藤原です。

**[Axross](https://axross-recipe.com/recipes)** とは、エンジニアの”教育”と”実務”のギャップに着目し、「学んだが活用できない人を減らしたい」という想いのもと、ソフトバンクと社内起業制度にて立ち上げたサービスです。

現役エンジニアによる実践ノウハウを”レシピ”として教材化し、実際にプログラミングで実装を追体験しながら学ぶことができます。

なぜ”レシピ”なのかと言うと、実行環境やツール、ライブラリのバージョン、データセットなどを定義して実際にものをつくりながら学ぶための教材としての品質維持や学びやすさを追求するためのフレームワーク設計と、「料理をつくるように 楽しく 手軽にものづくりができたら」というAxrossメンバーの想いで学習教材を料理の”レシピ”に喩えて提供しています。

現在は、AI/機械学習をテーマにした、様々な業務領域やビジネスの課題解決に応用できる実践的な学習教材を140以上揃えています。(2021年6月時点)

Axross:https://axro

元記事を表示

django-filter利用時にOR検索したかった件

初めてdjango-rest-frameworkを利用したシステムを作ることになった。
django-filterと言われるものが有るらしいので入れた際に時間がかかった点について書いていこうと思う。
https://django-filter.readthedocs.io/en/stable/guide/install.html

## やりたかったこと
Customerモデルを検索するときにcustomerNameに値を渡したら、customerNameに該当するものとfuriganaに該当するデータを出力したかった。

## 結果
filters.FilterSetにカスタムのやつ作る

“`shell:コマンドプロンプト
$ pip install django-filter
“`
djangoのsettings.pyのINSTALLED_APPS追記する。

“`python:settings.py
INSTALLED_APPS = [

‘django_filters’,
]
“`

Djangoにアプリを追加したり色々、ここらへんは省略。
以下

元記事を表示

機械学習とポケモン(1)

# やりたいこと
久しぶりの投稿です。
クラクラは少し休憩です。

今回はポケモンのタイプの強さの数値的評価方法について考えてみました。この投稿で紹介しているコードは以下のノートブックにもまとめてあります。
https://colab.research.google.com/drive/1t0q9Fj6MNTY-itminHmxhe04_7S8GUoP?usp=sharing

# はじめに
ポケモンのタイプは18タイプがあり、タイプ相性の関係が複雑であり、そのため、数値評価が難しい。そこでページランク手法を用いてタイプの強さを評価することを考える。ポケモンの強さを攻撃面と耐性面に分け、それぞれページランクを用いてそれぞれ数値化する。その後、タイプの強さを求めた攻撃面、耐久面の演算で評価するものとする。

# ページランクとは
ページランクは、Webページの重要度を決定するためのアルゴリズムである.検索エンジンのGoogleにおいては,検索語に対する適切な結果を得るために用いられている中心的な技術である.Webページにおいては多くのページからリンクされている,良質なページからリンクされ

元記事を表示

pythonエンジニア認定試験受験記(その後)

### 試験後

以下のオデッセイ開催のpython基礎認定試験を受験後の感想について記載する

Odyssey CBT | オデッセイ コミュニケーションズ
https://cbt.odyssey-com.co.jp

### 結果

無事合格した(ありがとうございます)

![IMG_1247.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/530719/481a0dcb-80c6-03ea-a3c0-771753ca2228.jpeg)

感想から言うとpythonと言う言語を一通りきちんと理解しているかと言う基本的なところを問われていたと思う。
あと個人的な所感としてはエラーの処理の部分のウエイトが思ったより多かった(この点はシャッフルかもしれないので一概にそうだとは言えないが)

全体的に意地悪な問題はあまりなかった。
と言うかPRIME STUDYやDIVE INTO CODEの模試より簡単であった。
この2つで8割方取れるのであれば合格は可能だと思われる。

試験会場に行ってからは受付の方に

元記事を表示

ゼロから始める機械学習 #2

# 最終目的

プログラミングを全くやったことがないという状態から,機械学習を行えるようになるまで,順に勉強する.

第一回目は,下記参照

https://qiita.com/t-baba-11/items/054bda7060952fc6bf74

# 第二回 目標と流れ

– 目標 : 学習データの中身を確認し,特徴量を選択する
– 流れ :
– 使用するライブラリの説明
– seaborn
– ライブラリのインポート
– 特徴量とは
– データを確認する
– カラムの説明
– 特徴量の抽出
– ペアプロット図
– 相関行列
– 抽出した特徴量での行列の作成

プログラムは前回のものに追記する形で書いていく.

# 使用するライブラリの説明
### seaborn

Pythonのデータ可視化ライブラリ

### ライブラリのインポート
“`.py
import seaborn as sns
“`

# 特徴量とは

機械学習では、データのどの部

元記事を表示

データの見方「初心者用」

#概要
kaggleの他人の回答方法[^1]を通してデータの扱い方を学ぶ.また,それに伴いpandasの使い方について学ぶことを目的とする.(また,あとで自分が振り返すことを目的としているため,多少の説明を省略しています.)(執筆途中)

#kaggleのTitanic
Kaggleの出発点として有名なタイタニックの問題[^2]を通して考える.こちらの問題は沈まないと謳われたタイタニック号が氷山にぶつかり沈没した事件において,サンプルデータが与えられ,テストデータの生存率を予測する教師なし学習の問題である.jupyter notebook上のpython3を用いて考える.

#学習の手順(workflow)
データを分析するにあたり,

1. 問題を定義する(Kaggleで与えられる).
2. 訓練データと試験データを入手する(Kaggleで用意される).
3. データを飼い慣らし(wrangle),準備し,きれいにする.
4. データを分析,識別,模倣し探索する.
5. 問題を模型化し,予測し,解く.
6. 問題解決の手順と最終的な方法を可視化し,報告し,提示する.
7. 結果を適用

元記事を表示

Pythonでネストされた色付き文字を出力する

# はじめ

Command Prompt, PowerShell, Terminalなどで色付き文字を出力する方法(ライブラリ)は多数あります。

有名どころで言えば

**Colorama**

“`python
from colorama import Fore

print(Fore.GREEN + “This text is green!”)
“`

https://github.com/tartley/colorama

**termcolor**

“`python
from termcolor import colored
print(colored(‘This text is green!’, ‘green’))
“`

https://github.com/hfeeki/termcolor

とかですかね。

## 素晴らしいライブラリ

これらは実に便利なライブラリです。簡単に色づき文字を作成したりすることができます。
ただ、実は一つ問題があります。

# ネストできない

これはつまり、たとえば

(赤字の文章)(緑字の文章)(赤字の文章)

元記事を表示

PandasのMultiIndexからスライスして行を取得する

## はじめに

[この記事][note.nkmk.me]を見て、タイトルの動作ををしようとした時にハマったので、メモしておきます。
解決はしましたが、根本的なメカニズムを理解できていないので、詳しい方がいたらご教授ください。

## やりたいこと

MultiIndexのDataFrame`df`から、`Index2 == ‘abc’`のものだけ取得する。

| Index1 | Index2 | Content |
|:——:|:——:|:——-:|
| A | abc | A_abc |
| B | de | B_de |
| C | abc | C_abc |
| D | de | D_de |
| E | abc | E_abc |
| F | de | F_de |

## 解決方法

“`
df.loc[(slice(None), ‘abc’ ), :]
“`

または

“`
df.loc[pd.Index

元記事を表示

DRF & Vue.js & Dockerでの環境構築

# 今回やる事
DRF、Vue.js、dockerでの環境構築をする上で、各ファイルの意味だったりコマンドだったりをよく忘れるので、とりあえずDRFとVueが連携出来るまでを、ほぼ自分用に残しておきます。

例として、ユーザー一覧を取得するだけの処理を実装します。

# 環境
__docker__

“`
$ docker version

Version: 20.10.6
“`

__docker_compose__

“`
$ docker-compose -v

docker-compose version 1.29.1, build c34c88b2
“`

__python__

“`
$ python –version

Python 3.8.10
“`

# 構築編

DBは開発段階ではsqliteを使い、DRF用にコンテナ1つ、Vue用にコンテナ1つを用意します。
サーバーはそれぞれの開発サーバーを使用するとします。

まずは、以下の様なディレクトリ構成でファイルを作成します。
アプリ名は「k2」です。

“`
k2/
├ api
│ ├

元記事を表示

Python_requestでファイルをダウンロード

今日は久しぶりにパイソンを復習しようと思います。 その中でパイソンを利用してファイルをダウンロードする方法を調べてみようと思います。

##方法
方法はrequestモジュールを活用することです。

“`
pip install requests
“`

requestモジュールを使用するには、まずpip install requestsを使用してrequestsモジュールをインストールする必要があります。

“`python
import requests

url = “http://google.com/favicon.ico”//….. 接続したいアドレス…
req = requests.get(url, allow_redirects = True) // getを使ってもいいし、postを使ってもいいし、別の接続方式を使ってもいいです。
open(‘google.ico’,’wb’).write(req.content)
“`

https://2.python-requests.org/en/master/user/quickstart/

ここからより多

元記事を表示

python キャラクタをひょこひょこ動かす

python キャラクタをひょこひょこ動かすコードです
←や→キーで少し左右に動きます

“`py
import pygame
from pygame.locals import *
import sys
def main():
pygame.init() # Pygameの初期化
screen = pygame.display.set_mode((800, 600)) # 800*600の画面
px=120
py=100
ph=99
pw=99
gMap = pygame.image.load(“hito.png”).convert_alpha() #勇者 50×50
ct=0
ck = pygame.time.Clock()
while True:
ck.tick(30) #1秒間で30フレームになるように33msecのwait
screen.fill((255,255,255))

元記事を表示

Pythonのpygame関連のコード

pygame関連のコードです
ボールゲーム

“`
python:ballgame.py
import pygame
from pygame.locals import *
import sys

# def event(kvx):
# # イベント処理
# for event in pygame.event.get(): # イベントキューからキーボードやマウスの動きを取得
# if event.type == QUIT: # 閉じるボタンが押されたら終了
# pygame.quit() # Pygameの終了(ないと終われない)
# sys.exit() # 終了(ないとエラーで終了することになる)
# elif event. type == KEYDOWN:
# if event.key==K_LEFT:
# kvx = -1#横方向の速度
#

元記事を表示

[メモ]DjangoのLogin、Logout機能

Djangoのログイン機能に少し引っかかってしまったので、メモします。
startappはDjangoで作成したアプリ内という意味です。

“`python:startapp/urls.py
from django.urls import path
from .views import homefunc, loginfunc, logoutfunc

app_name = ‘blog’

urlpatterns = [
path(”, homefunc, name=’index’),
path(‘login/’, loginfunc, name=’login’),
path(‘logout/’, logoutfunc, name=’logout’),
]
“`

“`python:startapp/view.py
from django.shortcuts import render, redirect,
from django.contrib.auth import authenticate, login, logout
from django.co

元記事を表示

pythonを便利に使おう第二回! 数学編

#初めに
問題を解くのに利用するとすれば、何が良いのか。紙には自由自在に文字を書き殴れるという利点があり、パソコンであれば、プログラムにあらゆる処理を肩代わりさせることが出来るという利点がある。それぞれの利点は、お互いの弱点にもなり得るのは、わかりやすい問題点でしょう。
ここで、どちらのほうが良いのか、という問に対して、一言で答えを出すというのは難しいことでしょう。ならば、試してみれば良いのです。
正答率が高いほうが、より優秀な手段と言えるでしょう。人類が先に、先に進むのであれば、優秀な手段でより優秀な手段を子供に学習させていくという必要があるでしょうし、教育の研究等にはきっとこういうことなのでしょう(何も知らないけど)。
###とかいう前置きはさておき!
数学の問題をpythonで解いてやろうというお話です。
問題を解く上でのレギュレーションとしては人に答えを聞きに行かないこと、それ以外であれば問題を解くための何をしてもOK!という気分でやってきます。

>問題としてこちらを使わせていただきました。
https://web.math-aquarium.jp/reidai-zissuu

元記事を表示

SQLAlchemyのトランザクション処理

# はじめに

SQLAlchemy を使って `insert` 処理を実行した際にトランザクションの扱い方で処理時間に結構な差がでました。(※注)
以下、サンプルコードと自身の環境での検証結果ではありますが知見を共有したく思います。

(※注)
本記事のサンプルコードでは `insert` 処理のみを扱いますが、`update` 処理でもトランザクションの扱いによって実行時間に差が出ます。

# 環境

| 環境 | バージョン | 備考 |
| ———————————————————— | ———————– | —————————- |
| macOS Catalina

元記事を表示

Macでpythonを使うときに覚えておいた方がいい備忘録

### はじめに
Macでpythonを使う時に覚えておいた方がいい備忘録について記載する
Windowsは手順が変わると思われるのであくまでMacのみということで限定する

###pyenv
pythonを複数バージョンで使いたいという時に使う
具体的にはbrewから以下の手順でインストールする

brewのインストールがまだというかたは以下のサイトを参照し
TOPページにあるとても長いコマンドをコピペしてインストールしておく

https://brew.sh/index_ja

インストールが終わったら

“`zsh
brew install pyenv
“`

とする
この時エラーが私の環境だと出たのでユーザの環境変数のファイル(私はzshを使っていたので.zshrc)に
以下の記載を追加する

“`zsh
export PYENV_ROOT=”$HOME/.pyenv”
export PATH=”$PYENV_ROOT/bin:$PATH”
eval “$(pyenv init –path)”
“`

pyenvのインストールが終わったらまずは自分が使いたいpytho

元記事を表示

AutoGluon 0.2.0によるAutoML環境(Docker前提)の作り方

# 1.はじめに

AutoGluonは、その性能の良さから2020年に話題になった[^1]AutoMLツールである。例えば、とあるKaggleコンペで99%の人間に勝ったという話[^2]もある。

翌2021年4月にはバージョン0.2.0が公開[^3]されたが、環境によってはマニュアル通りにインストールするだけでは十分正しい動作がなされないことがある。また、残念なことにWindows非対応で、LinuxかMacにしか対応していない。

本記事では、AutoGluon 0.2.0を実行するDockerコンテナと、それをVSCodeから利用するための手順を解説する。この手順は、少なくとも筆者の持つUbuntu 20.04.2 LTSの環境で動作確認している。Dockerコンテナを使う前提としたので、本記事の内容を応用すればWindowsでもAutoGluonを利用できるようになるかもしれない[^4]。

またDockerを使わずとも、本記事で説明するrequirements.txtを利用すれば、Linux環境ならAutoGluonを正しくインストールすることはおそらく可能と思われる。少な

元記事を表示

成功確率の観測データにはベイズ更新が便利

# はじめに
成功 or 失敗のベルヌーイ試行において、観測データの成功回数 / 試行回数の算術平均の値を成功確率として求めることが多いと思いますが
ベイズ更新を用いるともっと便利ですよ という話です。

## 例
算術平均で成功確率を求めると、以下のようになります。

### ユーザーAさん

|試行回数|試行結果|成功確率(成功回数 / 試行回数)|
|—|—|—|
|0|–|–|
|1|成功|100%|
|2|失敗|50%|
|3|成功|66.66%|
|4|成功|75%|
|5|失敗|60%|

### ユーザーBさん

|試行回数|試行結果|成功確率(成功回数 / 試行回数)|
|—|—|—|
|0|–|–|
|1|成功|100%|
|2|成功|100%|
|3|成功|100%|
|…|(4 ~ 99はすべて成功)|100%|
|100|成功|100%|

### 困る点
– 試行回数が0の時は成功確率が入らない
– データ持ちの関係でNULLにできない場合等
– 試行回数が加味されていない
– 試行回数が1回 かつ 成功回

元記事を表示

OTHERカテゴリの最新記事