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

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

Pythonでスカイライン法を実装する

# 概要
有限要素法などでよく使用されるスカイライン法ですが、Pythonで実装している例があまり見つからなかったので投稿しました。また、スカイライン法に関する資料も現時点(2021/9)ではインターネット上に少ないと感じたので、情報のまとめも兼ねて投稿します。

# スカイライン法とは
有限要素法において計算する行列は一般的には大規模な疎行列(ほとんどが0成分)で対称行列になります。スカイライン法はそのような大規模な疎行列に対して少ないメモリ容量で高速に解くためのアルゴリズムです。
目的は下記の式を解くことです。

“`math
Kx = f \\
K : 既知の疎行列\\
x : 未知のベクトル\\
f : 既知のベクトル\\
“`

疎行列Kの例

“`math
K =
\begin{pmatrix}
k_{11} & k_{12} & 0 & 0 & 0 & 0\\
k_{21} & k_{22} & k_{23} & 0 & 0 & 0\\
0 & k_{32} & k_{33} & k_{34} & 0 & 0\\
0 & 0 & k_{43} & k_{44} &

元記事を表示

Python で Azure の サブスクリプション毎 に リソースグループの一覧 を取得してみました

## 概要
Azure SDK for Python を利用して、接続しているテナントのサブスクリプション一覧を取得し、そのサブスクリプション毎にリソースグループの一覧を取得するための Python プログラムです。

### 実行環境
macOS Big Sur 11.1
python 3.8.3

### 実行プログラム

“`python:GetSubscriptionResourceGroup.py

import time
import argparse
from azure.mgmt.resource import SubscriptionClient, ResourceManagementClient
from azure.identity import AzureCliCredential

# 接続しているテナントのサブスクリプションを操作するオブジェクトを取得
def GetSubscriptionObject():
subscription_client = SubscriptionClient(
credential=Azu

元記事を表示

Python で Azure の サブスクリプション一覧 を取得してみました

## 概要
Azure SDK for Python を利用して、接続しているテナントのサブスクリプション一覧を取得するための Python プログラムです。

### 実行環境
macOS Big Sur 11.1
python 3.8.3

### 実行プログラム

“`python:GetSubscriptionList.py

import time
import argparse
from azure.mgmt.resource import SubscriptionClient
from azure.identity import AzureCliCredential

# 接続しているテナントのサブスクリプションを操作するオブジェクトを取得
def GetSubscriptionObject():
subscription_client = SubscriptionClient(
credential=AzureCliCredential()
)
return subscription_client

if __na

元記事を表示

Python で Azure の リソースグループ一覧 を取得してみました

## 概要
Azure SDK for Python を利用して、特定のサブスクリプションにあるリソースグループ一覧を取得するための Python プログラムです。

### 実行環境
macOS Big Sur 11.1
python 3.8.3

### 実行プログラム

“`python:GetResourceGroup.py

import os
import time
import argparse
from azure.mgmt.resource import ResourceManagementClient
from azure.identity import AzureCliCredential

SUBSCRIPTION_ID = os.environ[‘ARM_SUBSCRIPTION_ID’]

# 特定のサブスクリプションIDのリソースグループを操作するオブジェクトを取得
def GetResourceGroupObject(subs_id):
resource_client = ResourceManagementClient(

元記事を表示

[Python] ローカルのgitのブランチをお掃除するスクリプトを書いた

## はじめに

みなさんローカルに溜まっていくgitのブランチをどのように整理していますか?

自分は

“`shell
$ git branch
foo
bar
baz

$ git branch -D bar baz
$ git branch
foo
“`

のように、 `git branch` で一覧を表示した後、不要なものをコピペして削除していました。

`prune` や `–merged` を使えば、マージされているブランチを
__いい感じに__ 削除できるようですが、
「一覧から好きなものを選んで削除したい!」と思ったので、作ってみました。

簡単にコマンドライン上でのチェックボックスを実装できるライブラリはないかなと探し、
[PyInquirer](https://github.com/CITGuru/PyInquirer) を見つけたので、これを使いました。

## 完成したもの(gif)
![sweep_branch.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/19210

元記事を表示

失われた夢を求めて -BigSleepを用いた夢の直感的解釈-

## はじめに
皆さん「夢」って最近見ていますか?

一説に「夢」とは、睡眠時に大脳皮質がランダムに活性化された際の脳内活動の残滓ではないかと考えられております。
しかし、残滓として記録している「夢」は脳内で短期記憶として格納されてしまうため、毎晩のように出会っているのに、朝ごはんを食べるころにはキレイサッパリ忘れてしまっています。

そこで今回は「夢」を新鮮なうちに具体化することで、いつでも「夢」の残滓を確認することができる仕組みを考え、実験したので、その結果と考察を記事にさせていただきました。

![夢を見ました.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/102697/2ce7ebea-7393-17b3-e87b-3bca79f205d0.png)

##失われた夢を求めて

今回「夢」を具体化するために、以下のようなフローを考えました。

1. **朝起きた瞬間に覚えていることを記録する。**

2. **要約した文章を視覚化し、ひと目でわかるようにする。**

3. **いつでも夢を味わう

元記事を表示

【AtCoder解説】PythonでABC218のA,B,C問題を制する!

**ABC218**の**A,B,C問題**を、**Python3**でなるべく丁寧に解説していきます。

ただ解けるだけの方法ではなく、次の3つのポイントを満たす解法を解説することを目指しています。

– シンプル:余計なことを考えずに済む
– 実装が楽:ミスやバグが減ってうれしい
– 時間がかからない:パフォが上がって、後の問題に残せる時間が増える

ご質問・ご指摘は**コメント**か**ツイッター**、**マシュマロ**までどうぞ!

**Twitter: [u2dayo](https://twitter.com/u2dayo)**
**マシュマロ: [https://marshmallow-qa.com/u2dayo]**
**ほしいものリスト: https://www.amazon.jp/hz/wishlist/ls/2T9IQ8IK9ID19?ref_=wl_share**

よかったら**LGTM**や**拡散**していただけると喜びます!

# 目次

[ABC218 まとめ](#abc218-まとめ)
[A問題『Weather Forecast』](#a問題weath

元記事を表示

maya pythonで4つの書き方(pymel, maya.cmds, API 1.0, API 2.0)で頂点処理の比較

# はじめに

mayaでpythonを使う時に、色んなモジュールの選択肢がありますね。

主によく使うのがこの4つの方法
– pymel.core (pymel)
– maya.cmds (mc)
– maya.OpenMaya (maya python API 1.0)
– maya.api.OpenMaya (maya python API 2.0)

それぞれの方法についての説明は割愛しますが、mayaの公式サイトなどですでに詳しいドキュメントが書かれています。

maya python APIについては公式サイトに書いてあります
https://help.autodesk.com/view/MAYAUL/2022/JPN/?guid=Maya_SDK_Maya_Python_API_html

mayaでのpythonのAPIは1.0と2.0がありますが、その違いについてはこちら https://help.autodesk.com/view/MAYAUL/2022/JPN/?guid=Maya_SDK_Maya_Python_API_PythonAPI1VsPythonAPI

元記事を表示

Djangoで初期データをfixtureで登録・dump

# DjangoでDBにfixtureでデータ初期登録
初期データやテストで使うデータをデータベースに最初から用意しておきたいということがあります。
そんなときに使うのが`fixture`です。Djangoで初期データを登録する方法を書きます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/260345/bf15666a-caf9-6231-2322-884b6ba4e1aa.png)

“`django_docker/accounts/models.py
from django.db import models

class Customer(models.Model):
name = models.CharField(max_length=100)
phone = models.CharField(max_length=20)
email = models.CharField(max_length=255)
age = models.Integ

元記事を表示

Raspberry PiでGroveモジュールのライブラリをPython仮想環境(venv)でも使えるようにする。

初めて買ったRaspberry Piにセンサーメーカーのpythonパッケージを導入しようとしたら躓いた話です。

#はじめに
周辺機器を組み込んだRaspberry Piでは周辺機器メーカー製のパッケージを導入することで非常に簡単に様々なデバイスをコントロールできますが、Python仮想環境を使った開発で、メーカー製のパッケージをインストールするために、説明に従いスクリプトを実行しても、ルートの環境にインストールされてしまうような状況がありました。
これを最終的にインストールすることができた手順を示します。

#環境
– Raspberry Pi 3 model B+ ([SWITCHSCIENCE様商品ページ](https://www.switch-science.com/catalog/3920/))
– Raspberry Pi OS 32bit released 2021-05-07 (2021-09-12アップデート済み)
– pythonのシンボリックリンクを書き換えPython3の環境を標準としています。
– Windows上のVS codeからSSHでRaspberr

元記事を表示

【機械学習】ニューラルネットワークで競輪予想してみた(データセット準備編)

## はじめに
本記事は自身がニューラルネットワークで競輪予想をしてみた一連の流れをまとめたものになります.
全行程を一気にまとめると長くなりそうだったので今回は前半部分のデータセットの準備までをまとめました.

## 環境
Python 3.8.11

## 目次
* 問題設定
* データ収集
* データ前処理

## 条件設定
### そもそも競輪とは
1レース,7〜9人くらいでレースを行います.上位3人をいろんなかけ方で予想するといったものです.
競輪のルール,かけ方などは[こちら](https://morecadence.jp/keirin/110)に詳しく乗ってます.
### 条件設定
今回は問題を簡単化して,ある選手が3着以内に入るかどうかの二値分類問題にしようと思います!
### 特徴量
今回は特徴量として以下のような要素を選定しました.
* 予想 ••• 新聞記者による予想
* 好気合 ••• 初走以降で動きが好気合と評価した選手
* 総評 ••• 新聞本紙で設定された選手のパワーランク(1~20)小さい方が強い
* 枠番 ••• 枠の番号
* 年齢 •••

元記事を表示

線形回帰分析してみる

2021.09.13 タイトル変更
#1.今回の目的
はじめまして。Chimoと申します。
今回Qiitaに初めて記事を書いてみようと思います。

会社での調べものやE資格の勉強の際はいつもQiitaを除いており、皆様の記事に大変お世話になりました。
私ごときが投稿するのは非常に緊張しますが、頑張ります。

記事に関してご意見やご感想ございましたら、勉強になりますのでコメントいただけますと幸いです。

さて、今回は記事を書く練習を兼ね、Boston Housingのデータセットを用いて
住宅価格の線形回帰モデルを作ることを目標にしたいと思います。

#2.データセット読み込み「Boston Housing」
scikit-learnに付属するデータセットから、[Boston Housing](https://scikit-learn.org/stable/modules/generated/sklearn.datasets.load_boston.html “Boston Housing”)を読み込みます。

“`python
import numpy as np
import ma

元記事を表示

Nuxt で WordCloud を作る・そのためのデータを Python で作成する

## 成果物

以前、こちらのサイトを参考にさせていただき、

こんなアプリを作りました。

https://sake-pairing.netlify.app/

これを応用しながら、現在開発中のアプリにも、WordCloud の表示を追加しました。

https://polilink-web.netlify.app/person/196bd93c-ed5e-4462-a0fa-e75c6e08ffec/

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/77307/4895ebc5-a865-2df9-7ff7-c3216b934998.png)

こちらは、一例ですが、色んな方の専門家会議等での発言に基づいて、WordCloud としてまとめています。

## アプリケーション方式

このアプリ自体は、フロントを Nuxt で作って、Netlify にデプロイしています。
API を、D

元記事を表示

python Yahooニュースの指定したワードのみをスクレイピング

yahooニュースをいちいち確認するのが面倒と思ったので、Webスクレイピングを使ったプログラムを書いてみました。

今回は、`コロナのニュースを表示させる`ものとなっています。

“`python:

from bs4 import BeautifulSoup
import requests as req
import pandas as pd
import re

# 処理をクラスにまとめる
class List:

#コンストラクタにURL+ページの数を呼べるようにする
def __init__(self, page):
self.url = “https://news.yahoo.co.jp/topics/top-picks?page=”+str(page)

#以下処理メソッドをまとめる
def yahoo_s(self):

#ヤフーニュースの情報を取得する
res = req.get(self.url)
#print(res)

元記事を表示

Irisデータ処理(機械学習:前処理編)

##機械学習の全体の流れ
➀データの取得
➁データの加工(標準化、テスト用データと学習用データの分割など)
➂モデルの定義を行い、データを入力する。
➃機械学習を行う。(順伝播と逆伝播を繰り返し、精度を上げていく)
➄機械学習の結果を評価する。問題があれば、チューニングを行う。

今回は前処理に分類される➀と➁について整理したい。

##今回使用したPythonテクニック
➀One-Hot表記
➁内包表記
➂スライス
➃行列の初期化(onesとzeros)
➄assert(検証)

##ソース

・モジュールの導入

“`Python
#sklearnモジュールの呼び出し
from sklearn import datasets
import numpy as np
“`

・データの読み込み

“`Python
#データの読み込み
iris_data=datasets.load_iris()
#データについて、測定値(4種類)とそれに対するラベルについて取得する。
input_data=iris_data.data
correct_data=iris_data.target

元記事を表示

pandasチュートリアル

# pandasチュートリアル

本書は[pandsのチュートリアル]
(https://pandas.pydata.org/pandas-docs/stable/getting_started/intro_tutorials/index.html)を翻訳及び加筆したものです。

※筆者が所属するNPO法人の勉強用にメモしたものですので、誤りや不足、加筆修正すべきことろがありましたらご指摘ください。継続してブラッシュアップしていきます。

@2021 [NPO法人AI開発推進協会](https://sites.google.com/deepaelurus.com/aboutus/)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1413278/22dcf212-2b3d-d811-4a6d-d79a831b57a8.png)

BSD 3-Clause License

Copyright (c) 2008-2011, AQR Capital Management, LLC, L

元記事を表示

セカント法(2変数)

## セカント法(1変数)
https://qiita.com/roadto93ds/items/6dbbf4fe6e3b83e44498

## セカント法(2変数)
2変数のセカント法も作りました。
ブロイデン・フレッチャー・ゴールドファーブ・シャノン法(BFGS法)を使います。

$f(x, y)$ の最小解と最小値をセカント法で求める

“`math

\begin{aligned}
&\nabla f(x, y)=\left[\begin{array}{ll}
f_{x}(x, y) \\
f_{y}(x, y)
\end{array}\right] \\

&\left(\begin{array}{l}
x_{new} \\
y_{new}
\end{array}\right)=\left(\begin{array}{l}
x_{k+1} \\
y_{k+1}
\end{array}\right)-B_{k+1}^{-1} \nabla f(x_{k+1}, y_{k+1})
\end{aligned}

“`
### BFGS公式

“`math

B_{k+1}=

元記事を表示

goatoolsによるGO関係可視化図の見栄えを改良してみた

[前回の記事](https://qiita.com/moshi/items/3dd6126dedb7498015c8)でGO解析ツール「goatools」について紹介しました。
その時のコマンドライン操作のみからのGO関係可視化図の見栄えがいまいちだったので、見栄えがよくなるように改良を試みました。
改良による見栄えの改善に関する備忘録を残しておきます。

# 実行環境設定

goatoolsのインストールについては[前回の記事](https://qiita.com/moshi/items/3dd6126dedb7498015c8#%E5%AE%9F%E8%A1%8C%E7%92%B0%E5%A2%83%E8%A8%AD%E5%AE%9A)を参照

色情報を取り扱うライブラリ**colour**が前回から追加で必要
`pip install colour`

Ubuntu20.04 & Python3.8.10 にて実行環境構築を実施

# 前回までのGO関係可視化の問題点

goatoolsのコマンドツール「go_plot.py」により下記のGO関係可視化図が前回得られた。

“`

元記事を表示

【勉強記録】正規表現の分解

## 目次

– 趣旨
– マッチの確認
– 分解してみる
– 振り返り
– 参考サイト

## 趣旨
正規表現について学習しました。
今回は[こちら](https://designsupply-web.com/media/knowledgeside/1640/)で公開されている正規表現のサンプルをいくつかお借りして、それを分解することでどのような表現で実現しているのか確認してみたいと思います。

## マッチの確認
Pythonの標準モジュールである、re(正規表現操作)を利用して下記の通り確認していきます。
(手元ではこのコードで試しています。)

“` regular_expression.py
import re

numbers = “123”
# 「数字を1文字以上繰り返す」ことの確認
confirm = re.search(‘[0-9]+’, numbers)
# => 
“`

## 分解してみる
本題です。
### 名前
“`Python
^[ぁ-んァ-ヶー一-龠]+$
“`

元記事を表示

TTC003 公式解説

## これは何
この記事は、[TTC003](https://app.toy-pro.net/user/contests/TTC003)の各問題の考え方と回答、想定されるAC解の実行ステップ数をまとめたものです。
いくつかの回答例が示されていますが、この他にも様々な回答が考えられます。

## A – 桜並木(100)
想定されるAC解の実行ステップ数:$\Theta(1),\Theta(\frac{N}{k})$[^1]など
いわゆる植木算で解く問題です。 $N$ が $k$ で割り切れるため、端の部分の例外を考えなくて良いです。
整数での割り算は`int(N/k)`や`N//k`が考えられますが、精度を考えると`//`を使う方が望ましいでしょう。
道路の両側に木があるため、2をかけることを忘れないようにしましょう。
整数を文字列として扱う場合は`str()`関数やf-stringなどを利用できます。
#### 実装例1:strを使ったもの
“`python
N=1
k=1
print(str(2 * (N // k + 1)) + ‘本’)
“`
また、植木算で足す端の2本を別

元記事を表示

OTHERカテゴリの最新記事