Python関連のことを調べてみた2022年07月10日

Python関連のことを調べてみた2022年07月10日

Jupyter Labのインストール方法

## 仮想環境を作成します
※この処理はしなくても良いです。
JupyterLabが不要になった際にすぐ削除できるので便利です^^

“`
python -m venv jupyter
.\jupyter\Scripts\activate
“`

## JupyterLabをインストールし、実行します

“`
pip install jupyterlab
jupyter-lab
“`

たったこれだけでインストールし、実行できるようになります。
Jupyterlabは便利ですので、是非利用してみてくださいね。

## youtubeで確認
[![altテキスト](https://storage.googleapis.com/zenn-user-upload/ad1dd585da92-20220710.png)](https://www.youtube.com/shorts/0GkjbKSnM9M)

元記事を表示

【Python】アルファベットをNコ後ろにずらした文字

# 結論
アルファベットの英**小**文字を$S$とする。$S$の$N$コ後ろの英小文字は

“`python
chr(((ord(S)+N-ord(‘a’)))%26+ord(‘a’))
“`

とかける。ただし、`z`の次は`a`になるものとする。
※英**大**文字の場合、`a`を`A`にすればよい。

# 説明
文字→文字コードの変換は`ord`、文字コード→文字の変換は`chr`でできる。

“`python
print(ord(‘a’)) # 97
print(chr(97)) # a
“`

`ord(S)+N-ord(‘a’)`で$S$が`a`からいくつ後ろか分かる。`z`の次を`a`とするためには、英小文字の数26で割った余りとすればよい(`%26`)[^1]。これに`ord(‘a’)`を足せば文字コードになり、最後に`chr`で文字に変換する。
[^1]: 繰り返しの周期性のあるものは、周期の長さで割った余りを考えることが多い(曜日、月など)。

“`python
def func(S, N):
return chr(((ord(S)+N-ord(

元記事を表示

力強い超解像FeMaSR

***input / output***

## 写真をリアルに超解像したい

## FeMaSRは強力補完

https://github.com/chaofengc/FeMaSR

## 使い方

リポジトリをクローンし、以下のスクリプトで使えます。

“`shell
git clone https://github.com/chaofengc/FeMaSR.git
cd FeMaSR
pip install -r requirements.txt
python setup

元記事を表示

【Python】 defaultdictを使ってリストの集計をする

この記事は筆者が勉強したことを、自分のなかで理解を深めるために書いています。
間違った解釈、表現などありましたら、コメントいただけますと幸いです。

# 辞書型のおさらい

d = {key1 : value1, key2 : value2, key3 : value3,…}
>・要素(value)へのアクセスはkeyを使って参照
>・一つの辞書の中に同じkeyを重複して持たせることはできない
>・集合と同じく、可変、重複なし、順番なし

https://qiita.com/yuto-naga/items/ecb151c39bd54c73038a

https://www.shibutan-bloomers.com/python-basic-dictionary-2/690/

# defaultdict()について
・辞書型を拡張したデータ型
・キーが存在しない要素にアクセスした時の挙動を定義しておくことができる

https://teratail.com/questions/150160

## defaultdict()の使用例 ~リストを集計する~
~~~python:

元記事を表示

ロータリーエンジンのローターおよびハウジング生成

# 背景
特徴的な構造であるロータリーエンジンは、技術者なら一度は憧れるエンジンですよね。
そんなエンジンをいざ作ろうと思うと、作図ができない・・・
ならば、生成用のスクリプトを作ろう。

# 本編
ロータリーエンジンのローター及びハウジングの形は[こちらのサイト](https://opeo.jp/library/onepoint/calc/func_curve_pt/)を参考にしました。

作成したスクリプトとそれをもとにした設計例(Fusion360)は下記githubに公開しました。
[github](https://github.com/j4312043/GenRotery) ※GenRotery.pyはGPLライセンスとします

## dxfファイル生成
CADでの使用(インポート)を考慮すると、汎用的に使用可能なdxf形式がベストです。
pythonでは、dxfファイルを操作する以下のライブラリが公開されており、
そちらを利用しました。

## ハウジング
ロータリーエンジンは、固定されたハウジングと運動するローターとから構成されます。
ハウジングに関しては、解析解が掲載さ

元記事を表示

機械学習ど素人がノリで買った書籍をアウトプットしていく1

# はじめに
最近気になる機械学習について書籍を購入してみました。
どうせ勉強するなら自分の知識の確認と学習のログとして何かアウトプットしたいなと思い、本書籍で学んだことを記事としてまとめていこうと思います。

https://www.amazon.co.jp/%E7%AC%AC3%E7%89%88-Python%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0-%E9%81%94%E4%BA%BA%E3%83%87%E3%83%BC%E3%82%BF%E3%82%B5%E3%82%A4%E3%82%A8%E3%83%B3%E3%83%86%E3%82%A3%E3%82%B9%E3%83%88%E3%81%AB%E3%82%88%E3%82%8B%E7%90%86%E8%AB%96%E3%81%A8%E5%AE%9F%E8%B7%B5-impress-gear/dp/4295010073/ref=asc_df_4295010073/?tag

元記事を表示

PythonでgRPCのヘルスチェックを試してみる

# gRPCのヘルスチェックについて

gRPCにおけるヘルスチェックは[GRPC Health Checking Protocol
](https://github.com/grpc/grpc/blob/master/doc/health-checking.md)として仕様が定められています。
Kubernetesでは[Define a gRPC liveness probe](https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/#define-a-grpc-liveness-probe)に記載があるように、gRPCのヘルスチェックプロトコルを使用したLiveness Probeを指定することができます。

https://github.com/grpc/grpc/blob/master/doc/health-checking.md

https://kubernetes.io/docs/tasks/configure-pod-cont

元記事を表示

ライナあれぐれっしょん! 豪ドルでやろかっと

https://jp.investing.com/currencies/aud-jpy-historical-data
ここで20年分のデータを取得

日付を指定して、1971〜2022年の週ごとのデータ

![スクリーンショット 2022-07-08 17.10.00.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2380580/88d9552d-4660-bc86-147f-8f0bef50f62a.png)

を取得した!!

あ 次は jupyter labの操作~?

“`
from sklearn import linear_model #AI線形モデル
from sklearn.linear_model import LinearRegression #上のやつとどう違うのかわからんなんかエラーが出たので読み込みました
import numpy as np #なんだっけこれ
import pandas as pd #笹

from sklearn.model_selection impo

元記事を表示

M1 MacにAnacondaをインストールする

機械学習を行う上で、必要なライブラリ(主にTensorflow)がM1 Macに対応しないというケースが生じたので、これを機にAnacondaをインストールして仮想環境を作ろうと考えました。

ありきたりな記事にはなりますが、備忘録も兼ねて書いていきます。

# 環境

OS:macOS Monterary 12.4
シェル:zsh

# Anacondaのスクリプトをダウンロード

https://www.anaconda.com/products/distribution から「64-Bit (M1) Command Line Installer (305 MB)」をダウンロード

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/954754/e768eb19-7e1d-7508-3cc0-ff7a509dbba0.png)

# スクリプトの実行

ターミナルで以下のコマンドを実行

“`
$ bash ~/Downloads/Anaconda3-2022.05-MacOSX-ar

元記事を表示

Pythonプログラムが動くRaspberry piOS上にSSHでVsCodeを接続してみた

# Raspberry Piのシェルで、Pythonのデバッグのとかしたいよね。だからVSCodeでSSHで接続した。

Windows上で開発していたDjangoプロジェクトをSambaを使ってファイル共有して作成していたのですが、Windows上では動くが、Raspberry Pi OS上では一部のコードが、OSの仕様で動かないという小さい不具合が起きたので、直接Raspberry Pi OSのシェルで動かそうとやってみたわけです。

## 手順通りやったのに動かない。原因はSSH秘密鍵のセキュリティ権限設定
SSHでの接続は下記の記事が非常にわかりやすかったです。

https://qiita.com/nlog2n2/items/1d1358f6913249f3e186

ただ、VSCodeのSSH接続の仕様変更があったのか、上記の設定だけでは、下記のようなエラーが出て動かない

![WS000020.JPG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/271862/c6737e82-0b45-6dec

元記事を表示

【Python】割り算の切り捨て・切り上げ

# 結論
$a\div b$の
– **切り捨て**は、`a//b`
– **切り上げ**は、`(a+b-1)//b`

# 説明
$a\div b$の**切り捨て**は`a//b`

– $2\div 2=1.0 \rightarrow 1$
– $3\div 2=1.5 \rightarrow 1$
– $1\div 3=0.333\cdots \rightarrow 0$

“`python
# a//b
a,b=2,2
print(a//b) # 1
a,b=3,2
print(a//b) # 1
a,b=1,3
print(a//b) # 0
“`

$a\div b$の**切り上げ**は`(a+b-1)//b`

– $2\div 2=1.0 \rightarrow 1$
– $3\div 2=1.5 \rightarrow 2$
– $1\div 3=0.333\cdots \rightarrow 1$

“`python
# (a+b-1)//b
a,b=2,2
print((a+b-1)//b) # 1
a,b=3,2
print((a+b-1)//b) #

元記事を表示

【Python】Flask HTTPメソッド4種

## はじめに
pythonでHTTPメソッドを扱う方法についてまとめていきます.
FlaskでREST APIを作成する際にはよく使う記述をまとめました.
初学者の方の参考になればと思います!

## HTTPメソッドについて
HTTP ver1.1でのメソッド一覧は以下の通りです.

### GET
URIで指定した情報を要求する.
URIがファイル名の場合はそのファイルの中身を,プログラム名の場合はプログラムの出力を返す.

### HEAD
GETと同様の処理だが,HTTPヘッダのみを返す.

### POST
クライアントからデータを(名前と値)のセットで渡す.
使用例:フォームデータを送る時

### OPTIONS
通信オプションの通知等.

### TRACE
サーバが受け取った要求行とヘッダ行をそのまま送り返す.

### DELETE
URIで指定したサーバ上のファイルを削除する.

### PUT
URIで指定したサーバ上のファイルを置き換える.

### PATCH (Appendix)
PUTと同様の処理だが,差分のみを置き換える

### LINK (App

元記事を表示

TensorflowでGPUを使う方法

# はじめに

自分はtensorflowで機械学習しようと思い、CPUだと遅すぎるのでGPUを用いようとしましたが、なかなか環境構築がうまくいかずに3,4時間かかりました。同じような境遇の方の助けになりたいよ思い、この記事を書こうと思いました。

パソコンのスペックや環境によって多少異なるので参考程度に閲覧してください。

# 環境
・Windows10
・Python3.9.13
・GPU : RTX3060 ti

# 構築の手順
## NVIDIA Driver
まずはじめにNVIDIAドライバーのインストールをおこないます。

https://www.nvidia.co.jp/Download/index.aspx?lang=jp

自分のGPUのスペックを調べて入力し、検索してください。

自分の場合は、GPU:RTX 3060 tiなので以下の画像のようになります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2729175/581208ad-f7d5-56ae-9f0e

元記事を表示

pythonanywhereでbottleとlmdbを用いたウェブアプリのデプロイ方法

以下に方法を書き留めます。

python3.9のコンソールを1つ立ち上げて、
“`sh
pip install –user lmdb
“`

でlmdbのインストールが可能。
コンソールはそのまま立ち上げておく

pythonanywhereのwebappsから新しいサイトを作成。
python3.9のbottleを選択

pythonanywhereでアプリを動かす際は、
“`sh
bottle.run()
“`
の代わりに
“`sh
application = bottle.default_app()
“`
が必要。
(wsgiを用いて.pyを動かしているため。)
ない場合は書き込む(置換)。

また、ユーザ名_pythonanywhere_com_wsgi.pyの、
“`sh
project_home =
“`

“`sh
templates_dir =
“`

も書き換えが必要

元記事を表示

【Django】アプリ別にurls.pyを分ける方法

Djangoで開発している時にアプリが多くなると、1つのurls.pyに各ルーティングを記載していくとコードが多くなってしまいます。

この改善策として、各アプリのディレクトリにurls.pyを配置し、アプリ内のルーティングは、対象ディレクトリ内のurls.pyを使用することでルーティングを整備することができます。

そのやり方を以下に記載します

## プロジェクトのurls.py

django-admin startprojectにて、作成された最初のurls.pyは、以下のように記載します

“`python
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
path(‘admin/’, admin.site.urls),
path(‘myapp/’, include(‘myapp.urls’)),
]
“`

from django.urls import pathにincludeを記載します

urlpatterns内には、sta

元記事を表示

【物体検出2022】YOLO最新版のYOLOv7を試してみる 〜デモから学習まで〜

# はじめに

物体検出でお馴染みのYOLOシリーズの最新版「YOLOv7」について、動かしながら試していきます。YOLOv7は2022年7月に公開された最新バージョンであり、速度と精度の面で限界を押し広げています。Google colabを使用し簡単に最新の物体検出モデルを実装することができますので、ぜひ最後までご覧ください。

(こちらではより詳細に紹介しております。よかったらご覧ください。)

https://tt-tsukumochi.com

# YOLOv7とは
YOLOv7は2022年7月に公開された最新バージョンであり、5FPSから160FPSの範囲で速度と精度の両方ですべての既知のオブジェクト検出器を上回り、速度と精度の面で限界を押し広げています。
これまでのYOLOR、YOLOX、Scaled-YOLOv4、YOLOv5、 DETR、Deformable DETR、DINO-5scale-R50、ViT-Adapter-Bなどと比較しても速度と精度における他の多くのオブジェクト検出器を上回る結果を出しています。
特にYOLOv7-E6オブジェクト検出器(56 FPS

元記事を表示

python で 医療系共同研究 ① ネットワーク環境構築

# 医療系の共同研究が本格的に始まり

まずは専用PCへpythonの環境構築が及び
secureな方法の通信手段をどうするか?

機械学習だけではなくシステム全体の
ネットワーク環境を含めた設計イメージが必要になったため
こちらで学んだ知識をオープンにしていきたいと思います

余談ですが 私自身 臨床工学技士 という 医療従事者としても仕事をしているのですが
臨床工学技士は医療機器(薬機法では一部のソフトウェアも医療機器です)の専門家のため、
エンジニアとして院内のシステム開発に携わる方が多いのも特徴です!

国家資格でも、情報関係の問題があり 
大学時代に勉強した内容が非常に役に立っていると思います!

臨床工学技士について興味ある方は 
私が作成したこちらの動画を見ていただけると幸いです

https://ce-renmei.gr.jp/2022/05/16/%e5%8b%95%e7%94%bb%e3%82%b3%e3%83%b3%e3%83%86%e3%82%b9%e3%83%88%e7

元記事を表示

mnbcard – マイナンバーカード PYTHON Lib

## 概要

マイナンバーカードのPython用ツール・ライブラリーです。

## できること

– 券面確認 AP・券面入力補助 AP の読み取り
– 4 属性の取得(名前、住所、生年月日、性別)
– 個人番号の取得
– 公的個人認証の各種証明書の読み取り
– 認証用証明書の取得
– 認証用証明書 CA の取得
– 認証用証明書の取得
– 署名用証明書 CA の取得
– 公的個人認証の署名
– 認証用秘密鍵による署名
– 署名用秘密鍵による署名

## ソースコード
https://github.com/lanesky/mnbcard

## 使用例

“`python
#! /usr/bin/env python3

import logging
import sys
sys.path.append(‘./../mnbcard’)

from reader import get_reader, connect_card
from api import *
from helper import *

# ログレベルを設定する
root = logg

元記事を表示

【競プロ】だれでもかんたん座標圧縮

## はじめに
みなさん座標圧縮(略して座圧)という言葉はご存じですか、私はつい最近知りました。というのも以下の操作に「座標圧縮」という立派な名前がついていると知らなかったんですよね。
例えば下のような配列Aがあったとき
“`python
A = [4, 90, 25, 30, 30, 8, 90, 90]
“`
これを座標圧縮するというのは配列の各数字が何番目に大きいかを1から[^1]順にナンバリングしていくという操作です。つまり配列Aに座標圧縮を施すと
“`python
A_zaatsu = [1, 5, 3, 4, 4, 2, 5, 5]
“`
となります。ただし配列`A`のなかで同じ数字は`A_zaastu`の中でも同じ数字が割り当てられることに注意してください。今回はこの座標圧縮という処理を簡単に書けるようになろうというのが本題です。
## いざ本題
もう最初に答えを書いちゃいます。座標圧縮はこう書けば簡単です。
“`python
A = [4, 90, 25, 30, 30, 8, 90, 90]
S = sorted(list(set(A)))
ranking

元記事を表示

YOLOv5 データ拡張(Data Augmentation)を徹底解説

# 1. はじめに

YOLOv5のデータ拡張(水増し、Data Augmentation、データオーギュメンテーション)について、調べたことをまとめます。
何か間違っていること等あればご指摘いただき、内容を充実させていければと思います。

YOLOv5のデータ拡張ですが、Hyperparametersで指定をしている部分と、Albumentationsを使用している部分があるそうです。
それぞれについて解説をしていきたいと思います。

参考サイト

https://docs.ultralytics.com/FAQ/augmentation/

# 2. Hyperparametersでの指定

Hyperparametersはデフォルトでは.\data\hyps\hyp.scratch-low.yamlが呼び出されるので、その内容から確認します。

“`yaml:hyp.scratch-low.yaml
# YOLOv5 ? by Ultralytics, GPL-3.0 license
# Hyperparameters for low-augmentation COCO t

元記事を表示

OTHERカテゴリの最新記事