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

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

上司「ウチにあるスペアナ、PCから動かせるようにしといて」

上司「今度の検査で使うから」
上司「じゃ、頼んだわ」

ワイ「え?前にレンタルした奴じゃダメなんすか?」
ワイ「使用実績もありますけど」

上司「いや~あれ結構したんだよねえ~」
上司「あ、校正も出しといてね」

ワイ「へい…」

##今回の環境
###用意したもの
・PC(windows10)
・スペアナ (E4407B, Agilent)
・GPIB-USB変換ハブ (GPIB-USB-HS, NATIONAL INSTRUMENTS)
・資料を読み漁る根性

###使用技術
・GPIB
・Python(pyVisa)
・Google翻訳

##第一弾完成まで

ワイ「変換ハブのドライバをインストールして…おっっっも」
ワイ「スペアナ動かすのは公式でアプリかなんかあるやろ」[^1]
ワイ「Agilent時代の機器だけどKeysightで探して…」
ワイ「あったわ」

しかし…

ワイ「英語でよくわからんけどなんかアラートが出てるな…翻訳したろ」

アプリ「その機器には対応してへんで。すまんな」

ワイ「」

####機器が古すぎた

ワイ「公式だとアプリは出てなさそうやな」

元記事を表示

自作PythonライブラリのGitHub Actionsの環境のキャッシュ利用やジョブの並列化などをやってみる

趣味で作っている自作のPythonライブラリ(PyPIにアップロードされてpipでインストールできるもの)のGitHub Actionsのジョブを並列化したり環境のキャッシュをしたりができないか・・・と色々検証したり等の備忘録です。GitHub Actionsに精通していないため煩雑なところなど結構あるかもしれませんがご容赦ください。

# 現在の状況

現在までの状態は以前記事にしています。

https://qiita.com/simonritchie/items/629a02fc1ad0fd02d267

フローは大まかに「環境の準備」 → 「各種Lintで引っかからないことをチェック」 → 「テストで引っかからないことをチェック」 → 「PyPIへのアップロード」 → 「README上のバッジなどの更新」 → 「アップロードされたパッケージのインストールなどのチェック」といった具合になっています。テストの環境も特定のPythonバージョンのみ(最低サポートバージョンのPython3.6)で実施されています。

図にすると以下のようになります。順番に直列で進んでいく感じです。

元記事を表示

AWSサービス上限緩和の状況を一覧で取得したい


#1. はじめに
エンジニアとしてAWSを利用していると、お客様(非エンジニア)とのギャップに気づくことが多々あります。
エンジニアとしては「コンソールから見れば済むのに」という内容も、お客様にとってはパラメータシートなど資料に起こして管理したいと思うこともあるようです。

今回は、サービス上限緩和の状況を一覧で取得しようと思います。
※プログラム歴が浅く、コード上の改善案があればコメント頂けると幸いです:sunny:

#2. 本記事の内容
いくつかの参考記事をベースにPythonのBotoCoreを使い
サービス上限緩和の状況をJSON形式で一覧として取得します。

#3. 実装内容
1. “list_services()“APIを使い、サービスコード一覧作成
– 1.の結果をINPUTにして“list_service_quotas()API“を使い、最新の上限緩和状況を取得
– 1.の結果をINPUTにして“list_aws_default_service_quotas()“APIを使い、デフォルトの上限緩和状況を取得
– 2.と3.の内容を抽出

元記事を表示

KaggleでPythonを学習しよう。

#はじめに

2021年の8月に[30 Days of ML](https://www.kaggle.com/thirty-days-of-ml)がKaggleで開かれました。

私もでしたが、この機会にKaggleを始めた方も多いのではないでしょうか?

30日間の最初の1週目は[Pythonのコース](https://www.kaggle.com/learn/python)を終わらせよう、ということでした。

この時にDiscord(現在は招待リンクがうごいていません)でいろいろと回答とかしていましたので、Discordサーバが生きているうちにまとめておきます。

# [Python](https://www.kaggle.com/learn/python)
Learn the most important language for data science.
ということで

1. Hello,Python
1. Functions and Getting Help
1. Booleans and Conditionals
1. Lists
1. Loops and List Co

元記事を表示

素因数分解入門:3.1 試し割り法 – 処理の内容

この記事は [FUJITSU Advent Calender 2021](https://qiita.com/advent-calendar/2021/fujitsu) の1日目の記事です。
– – –
本記事を含む一連の記事では, 合成数の素因数分解について紹介していきます.
– – –
1. はじめに
2. 準備
3. 素朴な素因数分解法
3.1 試し割り法
3.2 Fermat法
4. 一次合同式を用いた素因数分解法
5. 二次合同式を用いた素因数分解法
– – –

# 3. 古典的な素因数分解法

本章から具体的な素因数分解方法を紹介していきます. 本章で紹介する試し割り法と Fermat 法は古典的な素因数分解法として有名で, いずれも処理が単純で実装しやすいという特徴を持ちます.家庭用の計算機でも 20 $\sim$ 30 桁程度の合成数の素因数分解が可能ですが, 残念ながらそれより大きな合成数の素因数分解には向いていません. しかしほとんどの合成数は小さい素因数を持つので[^1], 性質が不明な合成数を素因数分解する場合, まず試し割り法や Fermat 法によって小さ

元記事を表示

季節の推しを判別させた

# はじめに
この記事は限界開発鯖アドベントカレンダー1日目(12/1)の記事です。
遅刻しました。
ハロウィンネタは間に合いませんでした。

## 自己紹介
isso0424です。
goとtsを一生書いてるオタクです。
[Twitter](https://twitter.com/kousou4129) [GitHub](https://github.com/isso0424)

# きっかけ
ハロウィン、クリスマス、正月のような季節のイベント、オタクになった結果これにちなんだ推しのイラストを見ることで季節を感じるようになりました。PCくんにもこの感情を教えてやりたいと思い立ったので作りました。

# 実装
今回はpytorchを用いました。
ハロウィン、クリスマス、その他の3クラスの分別を行います。
AI触るの2年ぶりで全てを忘れてるので雑なのは許してください。
ディレクトリの構造はこんな感じです。

“`
main.py
# データセット用のディレクトリ
data
– halloween
– christmas
– normal
“`

## データを読み込む

元記事を表示

FastAPI + Reactでフルスタックアプリを作成する

この記事は「[【マイスター・ギルド】本物のAdvent Calendar 2021](https://adventar.org/calendars/6579)」1日目の記事です。

本記事ではFastAPI + Reactを使ったシンプルなフルスタックアプリの実装方法の紹介および所感を行っていきます。

# 想定読者
– React + TypeScriptの基本的な書き方を理解されている方。
– FastAPIに初めて触れる方。
– React + FastAPIで実装してみたい方。

# 今回のゴール
– 簡単なCRUD処理を実装する。
– 記事の管理を想定。
– ユーザー認証機能はなし。

# 開発環境
– PC: MacBook Pro(Apple M1, 2021)
– OS: macOS Big Sur 11.4
– フロントエンド:
– Node.js 16.10
– React 17.0.2
– Typescript 4.1.2
– バックエンド:
– Python 3.9.7
– FastAPI 0.70.0

# 執筆の経緯
自分は普段フ

元記事を表示

リモート時代の「今どこにいるの?」をpythonで

この記事は NTTテクノクロス Advent Calendar 2021の2日目の記事です。

こんにちは。安田と申します!
NTTテクノクロスでAI関連の新製品創出を担当しています。
(例えば、こういうの → [BizFront/SmartUI Decision Manager](https://www.ntt-tx.co.jp/products/bizfront/sui/dm/))

さて、本記事では、pythonで「今どこにいるの?」をロギングする方法を見ていきたいと思います。コロナ禍以降になって、会社オフィスだけでなく、自宅も働く場所になってきました。出社と在宅が混在するようになると、「そういえば先週の火曜日って、どこで働いていたっけ?」って、良く分からなくなります。そこで、私なりの工夫として、肌身離さず持ち歩いているノートPCがその日はどこにあったのかをログに残すことにしています。

原理(どうして居場所がわかるの?)

ノートPCがそのときに掴んでいるWifiのSSIDとBSSIDの情報を取得できれば、どこにいるのかは分かると思います。

* SSID = Wifiの

元記事を表示

Python の asyncio は超便利

Python の asyncio ([公式ページ](https://docs.python.org/ja/3/library/asyncio.html)) は超便利なので紹介します。

# ■何が便利?

要するに JavaScript ではもはや当たり前になっている **async/await** が実現できます。
つまり、**非同期**(処理をしている間、同期して完了を待つのでなく、次の処理を実行するやり方)を実現します。
非同期により、全体の **処理速度を爆上げ** できる場合がよくあります。

例えば、外部サービスリクエストや、ファイル・DBへの読み書きなど、I/O関連は時間がかかる割にCPUは空いてたりするので、そこが有効に活用されるようになるわけです。

多くのシステムはI/Oが大量にあったりするので圧倒的です。

# ■それってスレッドでもできるのでは?

もちろん可能ですが、コンセプトが異なり、スレッドに比べて **圧倒的にお手軽** です。

スレッドと何が違うのかというと、主な違いは、スレッドは複数の処理が同時に走るということです。処理の裏で別の処理が同時に走

元記事を表示

Google Colab と Turtle で描くアルファベット一覧(大文字編)

# 0. はじめに

– [MYJLab Advent Calendar 2021](https://qiita.com/advent-calendar/2021/myjlab) 1日目の記事です.
– Google Colaboratory と Turtle(タートルグラフィックス)でのアルファベットの描き方をまとめました.
– Turtleに命令を出して動かすことで簡単に文字を描くことができます.

![myjlab.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/484145/05e9000d-dfb9-a4dc-e2c3-96c9dc8eecf7.gif)

# 1. Turtle(タートルグラフィックス)の基本操作
– 本家サイト:[turtle — タートルグラフィックス](https://docs.python.org/ja/3/library/turtle.html)を参考にしています.

## Turtleの動き

### 前進
“`Python
turtle.forward(d

元記事を表示

Enformerの紹介

#はじめに

DeepLearningを使ったバイオインフォマティクス分野のキラーアプリというと[AlphaFold2](https://qiita.com/chanfuku18/items/5460f1aed5a698966eb2)が一世を風靡していますが、AlphaFold2を作ったDeepMind社が同じく作成した[Enformer](https://doi.org/10.1038/s41592-021-01252-x)というアプリ、当然ながらDeepLearningを使っているわけですが、AlphaFold2に比べるとほどんどガン無視な状態です。この記事ではそんな可哀そうなEnformerについて解説したいと思います。

#Enformerって何?

一言でいうと「[BERT](https://qiita.com/omiita/items/72998858efc19a368e50)の入力にゲノムの塩基配列を使ったもの」ということになります(以下では基本的にBERTの内容は理解できているという前提で書いていますのでBERTのアーキテクチャーが解ってないという人はまずはBERTを勉

元記事を表示

ROS Noetic の環境構築まとめ

![rosnoetic.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2337794/f153f38f-b371-7062-b603-e7dbb74a9a4b.png)
はじめまして。
Qiita初心者なので、今回は記事を書く練習も兼ねてROS Noeticの環境構築をまとめました。
ROSって何?と思った方は以下の記事を参考にすると良いと思います。
[Robot-teck.jp “ROSとは/ROS2とは”[1]](https://robot-tech.jp/technology/rbo01.html)

#目的
Ubuntu20.04がインストール済みの環境にROS Noeticをインストールする

#概要
基本的には以下の本家Wikiの通りですが、一部異なる作業もしています。
[Wiki.ros.org[2]](http://wiki.ros.org/noetic/Installation/Ubuntu)

#開発環境
– Ubuntu20.04(x64)
– GPU:Nvidia Geforce

元記事を表示

Site matching query does not exist.

サイトマップ作成後にサイトにログインしようとしたところログインできなくなってしまった。

server error(500)
と表示されており、詳細が不明だった。

“`python:setings.py
DEBUG = True
“`

エラーログを表示
Site matching query does not exist.

原因
サイトマップを作成中にドメインを変更しなければいけないところを誤ってドメインを削除して新しく追加してしまった。

削除してしまったドメイン
“`pk=1, domain=’www.example.com’, name=’example.com’“`

ログインができない状態なのでシェルで追加することにした。

アプリのディレクトリ上で実行
シェルの起動

“`
python3 manage.py shell
“`

Siteのインポート

“`
from django.contrib.sites.models import Site
“`

削除してしまったドメインの作成

“`
Site.objects.create(pk=1, d

元記事を表示

平仮名<==>カタカナ 変換

応用

“`Python
chr(ord(“き”) + (ord(“ア”) – ord(“あ”))) # ‘キ’
chr(ord(“バ”) – (ord(“ア”) – ord(“あ”))) # ‘ば’
“`

元記事を表示

PyTorchでサクッとオリジナル画像分類モデルを作る【TIMM / Pytorch Image Models】

# はじめに
[kaggle](https://www.kaggle.com/)や[Nishika](https://www.nishika.com/)などのデータ分析コンペティションでは画像分類を行うことがしばしばあります。
難しいことを考えずにそれなりの精度を出すための画像分類モデルをサクッと作る方法を紹介します。

# 環境
– Ubuntu 20.04
– NVIDIA GeForce RTX 3090
– CUDA Version: 11.4
– Docker version 20.10.7, build 20.10.7-0ubuntu1~20.04.2

# Dockerイメージのダウンロード
[Docker Hub](https://hub.docker.com/r/pytorch/pytorch/tags)からご自身のCUDAのバージョンに合わせてダウンロードしてください。

## CUDAのバージョン確認方法
“`bash
$ nvidia-smi
Mon Oct 18 11:10:24 2021
+———————————

元記事を表示

アルファベット順で指定のアルファベットを「何番目」かを出力する

何度かアルファベットの取り扱いがあったので、メモとして残します。

## 1.アルファベットを変数に代入
“`
import string

alphabets = string.ascii_uppercase
alphabets
# ABCDEFGHIJKLMNOPQRSTUVWXYZ
“`

## 2.str.index()でインデックス番号を取得
“`
alphabets.index(“D”) + 1
# 4

“`

## 3.typeを調べる
“`
type(alphabets)
# str
“`

元記事を表示

Windows 10 sqlalchemy ImportError

環境
Windows10 pro
Python3.9
Anaconda3
VSCode
Sqlite3

以下のコードを実行した。
““

““

import sqlalchemy
import sqlalchemy.ext.declarative
import sqlalchemy.orm

engine = sqlalchemy.create_engine(‘sqlite:///:memory:’)

Base = sqlalchemy.ext.declarative.declarative_base()

class Person(Base):
__tablename__ = ‘persons’
id = sqlalchemy.Column(
sqlalchemy.Integer, primary_key=True, autoincrement=True)
name = sqlalchemy.Column(sqlalchemy.String(14))

Base.metadata.create_all(engine)
““

元記事を表示

sklearn1.0以降で混同行列を作成する

## 背景
これまでsklearn 0.20等で混同行列を作成する場合には、confusion_matrix関数を使用していました。
sklearn 1.0では新たに追加されたplot_confusion_matrix関数がexampleに追加されています。

ただし、plot_confusion_matrixは引数にestimator, X_test, y_testを引数に取ります。
既に予測済みの結果がある場合には、少し無駄な処理に見えます。
また、[Deprecatedに関するアナウンス](https://scikit-learn.org/stable/modules/generated/sklearn.metrics.plot_confusion_matrix.html)も出ていることもあるため、あまり好んで使いたくありません。

## 予測済み結果から混同行列を作成する
`ConfusionMatrixDisplay.from_predictions` で作成できます。

“`python
import matplotlib.pyplot as plt
from sklea

元記事を表示

kivyMDチュートリアル其の肆什弍 Behaviors – Background Color篇

ハロー、Qiita!いかがお過ごしでしょうか。

肌寒い季節になってきましたね。まぁ時候の挨拶は来週に置いておくとして、
体調管理には気をつけたい時期となります。

ちょうど、来週からはAdvent Calendarなど始まってくると思いますが、
皆さんは参加されるのでしょうか。KivyMDにいたってはタグなどないので、
このビッグイベントには乗りませんw あったとしても1人で30日も投稿して
たら死にます。。

なので、KivyMDは相も変わらず、粛々と週1で投稿します。ということで今週
からはBehaviors章から始め、Background Color篇となります。ということ
でレッツラゴ。

## Background Color

冒頭では説明文が載っけられていますね。見てみましょう。

> The following classes are intended for in-house use of the library.

またまた難しそうな英文ですね。in-houseを検索すると「組織内の」とか「社内」の
とかが結果として出てきます。

https://eow.alc.

元記事を表示

【Python3】Streamlitで簡単にWebアプリケーション作成

#Streamlitとは
簡単に言うと、__Webアプリケーションフレームワーク__です。
Streamlitを使用する大きなメリットとしては、
Pythonスクリプトを書くだけで、__アプリケーションの構築__が可能であるということです。
Webアプリケーションを作成する場合は、基本的にはJavaScriptやhtml/CSSでフロント部分の構築が必要になりますが、Streamlitを使用すれば、__Python__のみでWebアプリケーションを作成することができます。
また、Pythonの学習のみを行っていて、フロントエンドに関する知識がまだない方や、簡単にWebアプリケーションを作成してみたいという方にお勧めです。

#インストール方法
以下のコマンドをターミナル上で実行することで、インストールが可能です。

“`
$ pip install streamlit
“`

#実際にインポートしWebアプリケーションの動きを見る
インストールが完了したら、Pythonスクリプトでコマンドを実行するだけで、アプリケーションの起動ができます。

“`py
# streamlitのイ

元記事を表示

OTHERカテゴリの最新記事