Python関連のことを調べてみた

Python関連のことを調べてみた

QiitaのAPI、webスクレイピング、GPTを使用して記事書いてみた!

:::note warn
本日の記事は「QiitaのAPI、webスクレイピング、GPTを使用して生成された記事」です。
次回以降でその仕組みを解説していきます!
:::

## `faster-whisper`とは

`faster-whisper`は、開発者がPythonで音声認識システムを構築するための高速かつ効率的なツールです。このフレームワークでは、ディープラーニングベースの手法を用いて、音声データを処理し、テキストに変換することができます。さらに、高速な処理を実現するために、ジョブの並列化と分散処理が組み込まれています。

`faster-whisper`の主な特徴は以下の通りです。

1. ディープラーニングベースの音声認識:`faster-whisper`は、最先端のディープラーニング技術を使用して、音声データを認識し、テキストに変換します。このため、高い精度で音声をテキストに変換することができます。

2. 高速な処理:`faster-whisper`は、高速な処理を実現するために、ジョブの並列化と分散処理をサポートしています。これにより、複数の音声ファイルを効率的に

元記事を表示

[解説] 上編:yfinanceの凄さを伝えたい(株価データ, 財務データ, 企業関連ニュースの取得)

# 自己紹介
慶應義塾大学 経済学部 3年生(2024/2/2時点)のアギラーです。
現在は「金融 x データ分析」を中心に学習中
ゼミの研究での学習を備忘録としてまとめていきたいと思います。

– X(Twitter): [@KlynoAgular](https://twitter.com/KlynoAguilar)

# この記事を読むと…
– yfinanceを体系的に学べる
– 株価分析における株価データの取得を簡略化できる(下編に移行)

# 目次
– [0. そもそもyfinanceとは](#0-そもそもyfinanceとは)
– [1. yfinanceのインストール](#1-yfinanceのインストール)
– [2. データの取得と確認](#2-データの取得と確認)
– [3. 株式に関する情報の取得と確認](#3-株式に関する情報の取得と確認)
– [4. 財務データの取得と確認](#4-財務データの取得と確認)
– [5. 株主情報の取得と確認](#5-株主情報の取得と確認)
– [6. 評価と推奨データの取得と確認](#6-評価と推奨データの取得と確認)

#

元記事を表示

動的計画法で解く効用最大化問題

# 代表的家計の最適行動
– 離散時間モデル
– 消費者(代表的個人)は無限期間生存するとし,単一の家計を構成[^1]
– 家計は$t$期において,資産$w_t$を消費$c_t$と貯蓄$s_t$に配分する
– 家計は労働の対価として$p$の所得を得る
– よって,来期の資産は $w_{t+1} = s_t + p$
– $u(c_t)$を瞬時的な効用関数 (instantenous utility function) とする
– 家計は0期において,次式で表される生涯効用$U_0$を最大化する消費(貯蓄)計画を立てる
[^1]: 人間が無限期間生きるというのはおかしな話だが,0期の消費者の生涯効用$U_0$を見ると将来世代の効用関数が入っている.つまり,遺産を残すことが自分の効用の増大にもつながるので,分析者からすると0期の消費者はあたかも無限期間生きているような振る舞いを見せる.
“`math
U_0 = \sum_{t=0}^{\infty} \beta^t u(c_t)
“`
上記の設定の下で,家計は次式で表現される制約付きの生涯効用最大化問題を解く.

“`math

元記事を表示

パワポで作成した図をPythonで自動で塗りつぶす方法

### TL;DR
パワポなどで作成した図を自動で塗りつぶしたいときがあります(手書きのヒートマップを複数個自動で生成したいときとか)。今回の方法は輪郭が分かれている(互いに外枠を共有していない)図形であればどんな図形でも指定したRGB値で塗りつぶすことができます。

### 環境
Python 3.8.10
opencv-python 4.9.0.80
Pillow 9.5.0

### 入力画像
例として四角形4つからなる画像を使います。

![image_orig.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2953049/f9502349-a321-c840-3006-80aec8d1be85.png)

### 実装
“`cv2“`で画像を読み込み、“`threshold“`でバイナリ画像に変換したのち、“`findContours“`で輪郭(contours)を抽出します。

“`python
import cv2
from PIL import Image

image

元記事を表示

debian11系にpython2.7をインストールする際の備忘録

debian11系にpython2.Xをインストールする際の備忘録

※ python2.X系はもうEOLなので、python3.X系を使った方がいいです
※ 以下は妄想です

## 背景

ある日、debian11系にpython-devインストール試みるとエラーとなった

“`sh
$ sudo apt install –yes python-dev

E: Package ‘python-dev’ has no installation candidate
“`

debian11系以降、python-devはもはや利用可能ではないらしい

> https://unix.stackexchange.com/questions/708493/python-dev-package-installation-error
> python-dev is no longer available since Debian 11, Ubuntu 20.10, and any distribution derived from those.

## 対策

以下を参考に、こちらからソ

元記事を表示

それ,numpy で書かない?–6–

## それ,numpy で書かない?–6–

Python ではリストがよく使われる。また,for ループが遅いのでリストに特化したリスト内包表記も推奨されることが多い。

それなりの根拠があるからではあるが…

課題:リストではなく二次元配列を使う。
リストをうまく操ろうとしてリスト内包表記を濫用すると,とても見通しの悪い,醜いプログラムになる。

副次効果:他の部分のプログラムもシェープアップされる。

以下に,奇数魔方陣を作って,正しいかどうか検証するプログラムを二通り書いて比較してみる。

## 1. リストとリスト内包表記を使う
“`python
def generate_odd_magic_square(n):
magic_square = [[0] * n for _ in range(n)]
num = 1
i, j = 0, n // 2

while num <= n * n: magic_square[i][j] = num num += 1 new_i, new_j = (

元記事を表示

【mamba】Transformerを凌駕しうるアーキテクチャを徹底解説(ソースコードあり)

# はじめに
薄紅色の柔らかなそよ風が恋しい今日この頃皆様いかがお過ごしでしょうか?
はじめまして。
某総合電機メーカ・某設計部門(機械設計)に属する 六花 牡丹(りっか ぼたん)と申します。
とある事情でこちらのサイトに不定期で記事を載せることがございます。
本記事ではMambaに関するアルゴリズム・数学的な原理に加え、独自に開発した学習・推論コードを示すことで基礎から応用までをカバーしています。
拙筆ではございますが、皆様のお役に立つことを心から願っております。
未熟者故、記事中にて誤記・欠落などが見られることがございます。
もし発見しました場合には、コメント等にてご指摘いただきますようお願い申し上げます。
私は記事を一般に周知する手段を有していないため、もし記事が有用であると判断された場合には、X(旧Twitter)等で拡散していただけますと幸いです。

# 執筆動機
本記事執筆時点(2024年2月初旬)で、mambaに関する記事があまり存在しないため、技術の周知を行い、もって日本国の科学技術発展に寄与することを目的とする。

# 対象とする読者
・pythonを用いたプログラミ

元記事を表示

C++で簡単に実験結果をプロット&管理 ~wandb-cpp~

私が作ったライブラリの宣伝です! C++で[wandb](https://www.wandb.jp/)を叩くためのライブラリです!

https://github.com/yhisaki/wandb-cpp

GithubでStar⭐⭐やIssueで様々なご指摘,新規機能のリクエストなどをいただけると嬉しいです!! PRなどをしていただけると更に嬉しいです!!

## どんなことに使えるの?

C++で数値実験などをする方々は,その結果をどのようにプロット・管理していますか?プロットするだけであれば[Matplot++](https://github.com/alandefreitas/matplotplusplus)や[matplotlib-cpp](https://github.com/lava/matplotlib-cpp)などを使っているのではないでしょうか?また,結果の保存はローカルファイルにしているはずです.

このライブラリは,C++での数値実験の結果を**クラウドにアップロード**して**web上でビジュアライズ**するための便利ライブラリです.

![example_

元記事を表示

Java初心者のためのPython×競技プログラミング入門Day7

# Java初心者のためのPython×競技プログラミング入門Day7
本記事は、Javaの基本を学び終えた方に向けて、Pythonを使って競技プログラミングを始めてもらおうという趣旨の記事です。1週間でAtCorderのB問題(現時点で最新のABC338)(誘導あり)を解けるようにする、ということを目標として書いていきます。
言い訳:まだ業務未経験であり、歴も長くないため、間違っているところや勘違いについてはご容赦下さい。
初投稿のため、至らぬ点はぜひご指摘いただきたいです。
前回:[Java初心者のためのPython×競技プログラミング入門Day6](https://qiita.com/maru3460/items/00b2796580b6fc1b0e6e)

### 前提条件
– Javaの基本がわかる
– googleのアカウントを持っている
– AtCorderのアカウントを持っている。持っていない方は[こちら](https://info.atcoder.jp/overview/contest/intro)を参考にしてください

Python実行用ファイル:[J

元記事を表示

Java初心者のためのPython×競技プログラミング入門Day6

# Java初心者のためのPython×競技プログラミング入門Day6
本記事は、Javaの基本を学び終えた方に向けて、Pythonを使って競技プログラミングを始めてもらおうという趣旨の記事です。1週間でAtCorderのB問題(現時点で最新のABC338)(誘導あり)を解けるようにする、ということを目標として書いていきます。
言い訳:まだ業務未経験であり、歴も長くないため、間違っているところや勘違いについてはご容赦下さい。
初投稿のため、至らぬ点はぜひご指摘いただきたいです。
前回:[Java初心者のためのPython×競技プログラミング入門Day5](https://qiita.com/maru3460/items/8b5f58f44081111d90ce)
次回:[Java初心者のためのPython×競技プログラミング入門Day7](https://qiita.com/maru3460/items/b2af82d55d8330a353a0)

### 前提条件
– Javaの基本がわかる
– googleのアカウントを持っている
– AtCorderのアカウントを持

元記事を表示

Java初心者のためのPython×競技プログラミング入門Day5

# Java初心者のためのPython×競技プログラミング入門Day5
本記事は、Javaの基本を学び終えた方に向けて、Pythonを使って競技プログラミングを始めてもらおうという趣旨の記事です。1週間でAtCorderのB問題(現時点で最新のABC338)(誘導あり)を解けるようにする、ということを目標として書いていきます。
言い訳:まだ業務未経験であり、歴も長くないため、間違っているところや勘違いについてはご容赦下さい。
初投稿のため、至らぬ点はぜひご指摘いただきたいです。
前回:[Java初心者のためのPython×競技プログラミング入門Day4](https://qiita.com/maru3460/items/36ee56dbf4d7b42e3d56)
次回:[Java初心者のためのPython×競技プログラミング入門Day6](https://qiita.com/maru3460/items/00b2796580b6fc1b0e6e)

### 前提条件
– Javaの基本がわかる
– googleのアカウントを持っている
– AtCorderのアカウントを持

元記事を表示

Java初心者のためのPython×競技プログラミング入門Day4

# Java初心者のためのPython×競技プログラミング入門Day4
本記事は、Javaの基本を学び終えた方に向けて、Pythonを使って競技プログラミングを始めてもらおうという趣旨の記事です。1週間でAtCorderのB問題(現時点で最新のABC338)(誘導あり)を解けるようにする、ということを目標として書いていきます。
言い訳:まだ業務未経験であり、歴も長くないため、間違っているところや勘違いについてはご容赦下さい。
初投稿のため、至らぬ点はぜひご指摘いただきたいです。
前回:[Java初心者のためのPython×競技プログラミング入門Day3](https://qiita.com/maru3460/items/ae9cab608affad804cd7)
次回:[Java初心者のためのPython×競技プログラミング入門Day5](https://qiita.com/maru3460/items/8b5f58f44081111d90ce)

### 前提条件
– Javaの基本がわかる
– googleのアカウントを持っている
– AtCorderのアカウントを持

元記事を表示

Java初心者のためのPython×競技プログラミング入門Day3

# Java初心者のためのPython×競技プログラミング入門Day3
本記事は、Javaの基本を学び終えた方に向けて、Pythonを使って競技プログラミングを始めてもらおうという趣旨の記事です。1週間でAtCorderのB問題(現時点で最新のABC338)(誘導あり)を解けるようにする、ということを目標として書いていきます。
言い訳:まだ業務未経験であり、歴も長くないため、間違っているところや勘違いについてはご容赦下さい。
初投稿のため、至らぬ点はぜひご指摘いただきたいです。
前回:[Java初心者のためのPython×競技プログラミング入門Day2](https://qiita.com/maru3460/items/848b28a92719b86c8044)
次回:[Java初心者のためのPython×競技プログラミング入門Day4](https://qiita.com/maru3460/items/36ee56dbf4d7b42e3d56)

### 前提条件
– Javaの基本がわかる
– googleのアカウントを持っている
– AtCorderのアカウントを持

元記事を表示

Java初心者のためのPython×競技プログラミング入門Day2

# Java初心者のためのPython×競技プログラミング入門Day2
本記事は、Javaの基本を学び終えた方に向けて、Pythonを使って競技プログラミングを始めてもらおうという趣旨の記事です。1週間でAtCorderのB問題(現時点で最新のABC338)(誘導あり)を解けるようにする、ということを目標として書いていきます。
言い訳:まだ業務未経験であり、歴も長くないため、間違っているところや勘違いについてはご容赦下さい。
初投稿のため、至らぬ点はぜひご指摘いただきたいです。
前回:[Java初心者のためのPython×競技プログラミング入門Day1](https://qiita.com/maru3460/items/2b42d78890b6f001d789)
次回:[Java初心者のためのPython×競技プログラミング入門Day3](https://qiita.com/maru3460/items/ae9cab608affad804cd7)

### 前提条件
– Javaの基本がわかる
– googleのアカウントを持っている
– AtCorderのアカウントを持

元記事を表示

Java初心者のためのPython×競技プログラミング入門Day1

# Java初心者のためのPython×競技プログラミング入門Day1
本記事は、Javaの基本を学び終えた方に向けて、Pythonを使って競技プログラミングを始めてもらおうという趣旨の記事です。1週間でAtCorderのB問題(現時点で最新のABC338)(誘導あり)を解けるようにする、ということを目標として書いていきます。
言い訳:まだ業務未経験であり、歴も長くないため、間違っているところや勘違いについてはご容赦下さい。
初投稿のため、至らぬ点はぜひご指摘いただきたいです。
次回:[Java初心者のためのPython×競技プログラミング入門Day2](https://qiita.com/maru3460/items/848b28a92719b86c8044)

### 前提条件
– Javaの基本がわかる
– googleのアカウントを持っている
– AtCorderのアカウントを持っている。持っていない方は[こちら](https://info.atcoder.jp/overview/contest/intro)を参考にしてください

Python実行用ファイル:[J

元記事を表示

新卒エンジニア勉強会-連想配列

## はじめに
新卒エンジニア同士で実施している勉強会の第5回目の記事になります。
今回のテーマは連想配列についてです。


| 回 | テーマ | 記事リンク |
|:———–|:————|:————|
| 第1️回 | 二分探索 | |
| 第2回 | ソートアルゴリズム | |
| 第3回 | 暗号化 | |
| 第4回 | bit演算 | |
| **第5回** | **連想配列** | |
| 第6回 | グラフ理論 | |

## 前提
連想配列とは、キーバリュー型のデータ構造のことを指します。Pythonで言うと辞書型のデータ構造のことです。

元記事を表示

Pythonで〇×ゲームのAIを一から作成する その52 set の性質と利用方法

# 目次と前回の記事

https://qiita.com/ysgeso/items/2381dd4e3283cbed49a0

https://qiita.com/ysgeso/items/58754ba98c286f414ea4

## これまでに作成したモジュール

以下のリンクから、これまでに作成したモジュールを見ることができます。

https://github.com/ysgeso/marubatsu/blob/master/052/marubatsu.py

https://github.com/ysgeso/marubatsu/blob/master/052/ai.py

## これまでに作成した AI

これまでに作成した AI の アルゴリズム は以下の通りです。

| ルール | アルゴリズム |
|:-:|:–|
| __[ルール1](https://qiita.com/ysgeso/items/bdbcd4c1ab1d8731df58#%E6%9C%80%E5%88%9D%E3%81%AB%E8%A6%8B%E3%81%A4%E3%81%8B%E3%81%A

元記事を表示

コメント書けるJSON `jsonc`(JSON with Comments) とは

# jsoncとは

jsonc… それはコメントを書けるjson形式。
ただ、jsonにコメントを書きたいなんて誰でも考えることだし、できなくても何とかなるものだし、フワフワした感じになっています。

## Microsoftのjsonc

調べて一番出てくるのはコレ、Microsoftのjsでの実装。

https://github.com/Microsoft/node-jsonc-parser

VSCodeのドキュメントでは`JSON with Comments`と呼んでいます。

https://code.visualstudio.com/docs/languages/json#_json-with-comments

ざっくり和訳↓
> 通常のJSONモードに加えて、JSON with Comments (jsonc)モードも提供します。
> これはVSCodeの設定ファイル(settings.json, tasks.json, or launch.json)にも使用されます。
>
> このモードでは、JavaScriptのように、ブロックコメント(/* */)および

元記事を表示

【Python】Plot系ライブラリ全統一した

# 動機

Pythonはグラフ描画系のライブラリが豊富です。例えば、

– [matplotlib](https://github.com/matplotlib/matplotlib) / [seaborn](https://github.com/mwaskom/seaborn)
– [pyqtgraph](https://github.com/pyqtgraph/pyqtgraph)
– [plotly](https://github.com/plotly/plotly.py)
– [bokeh](https://github.com/bokeh/bokeh)
– [vispy](https://github.com/vispy/vispy)

などがあります。それぞれ長短あるのはまあ言うまでもないですが、統一的なAPIが欲しくなりますよね…ということで統一[^1] [^2]したのがこちらになります。今後、ちょっとした解析、デスクトップアプリ、ウェブブラウザなど、様々な場面で同じコードで動かせたらきっと楽しいですね。

[^1]: **Q:** [altair](https:/

元記事を表示

Dockerでコンテナ間通信 (Python)

# はじめに
Pythonを使用してコンテナ間通信をお試ししたのでそれのメモ。
サーバ(api)に対して、クライアント側からrequestsライブラリでgetし、
実行結果をクライアント側で標準出力させた。

# フォルダ構成
clientフォルダとserverフォルダを作成し、それぞれにDockerfileを作成した。
必要なpythonライブラリ類はrequirements.txtを使用せず、直接Dockerfile内でインストールするようにした。
~~~
my-app
├─ client
│ ├ client.py
│ └ Dockerfile
├─ server
│ ├ server.py
│ └ Dockerfile
└─ docker-compose.yml
~~~

# サーバ側(web_server)
[FastAPI](https://fastapi.tiangolo.com/ja/tutorial/query-params/)を参考にserver.pyを実装させていただいた。

~~~Python:server.py
from typing impo

元記事を表示

OTHERカテゴリの最新記事