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

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

【J-Quants】業種別空売り比率データ・業種別指数データの紹介及び利用例について

## はじめに

こんにちは!J-Quants運営チームです。

運営チームでは、個人向けに金融データをAPIで配信するサブスクリプションサービスである[J-Quants](https://jpx-jquants.com/)を活用した、金融データの分析例などの技術記事を投稿しています。

当記事では、J-Quantsの業種別空売り比率API及び指数四本値APIを用いて、業種別に空売り比率と指数の騰落率を算出し、算出した空売り比率が指数の騰落に影響を与えるかどうかを、散布図を描画して分析してみます。

今回の記事で使用するデータは、いずれもJ-Quantsのスタンダードプラン以上をご契約いただくとご利用いただけるものとなります。

なお、指数四本値APIでは、2024/3/28より業種別や市場別等の指数データを配信対象として追加しています。当記事では、新たに配信対象となった業種別指数を用います。

J-Quantsについては、巻末の[J-Quantsとは](#j-quantsとは)をご参照ください。

## 業種別空売り比率とは

空売り比率の説明の前に、まずは株式の売買における売注文に

元記事を表示

spearmanr

import numpy as np
from scipy.stats import spearmanr

# Sample data
x = np.array([1, 2, 3, 4, 5])
y = np.array([5, 4, 3, 2, 1])

# Calculate Spearman correlation coefficient and p-value
corr, p_value = spearmanr(x, y)

print(“Spearman correlation coefficient:”, corr)
print(“P-value:”, p_value) # pvalue < 0.05 is better

元記事を表示

ベンフォードの法則を確認するプログラム

# ベンフォードの法則
[ベンフォードの法則](https://ja.wikipedia.org/wiki/%E3%83%99%E3%83%B3%E3%83%95%E3%82%A9%E3%83%BC%E3%83%89%E3%81%AE%E6%B3%95%E5%89%87)とは,自然界に現れる数値の1桁目の1から9の数字が,等しく分布するのではなく,偏って分布するという法則です.数学的には数字$i$($0\leq i\leq 9$)が現れる頻度は,
$$
\log_{10}(i+1)-\log_{10}i
$$
となり,具体的には次のようになります.

| $i$ | $\log_{10}(i+1)-\log_{10}i$ |
|—:|—:|
|1|30.1%|
|2| 17.6%|
|3| 12.5%|
|4| 9.7%|
|5| 7.9%|
|6| 6.7%|
|7| 5.8%|
|8| 5.1%|
|9| 4.6%|

# Pythonプログラムによるベンフォードの法則の検証
ある銀行に口座を開設し,初日に1円を預けることにします.利子が毎日元本を2倍にすると仮定し,この状

元記事を表示

機械学習用の画像前処理を解決!

## できること
![movie.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/577096/ba2f206f-d051-7f00-e5a5-f58feec33199.gif)
**いつも面倒な前処理を解決!!!**

## 背景
Stable Diffusion等の画像生成AIをファインチューニングしようとした際、なるべく綺麗な画像(背景情報などが削除された画像)を使いたい。しかし、背景を削除するのは一苦労。さらに、車などの対象物のサイズもバラバラだと学習もうまくいかなかったりする。そこで、背景を削除すると同時に、対象物のサイズも揃えた画像を出力できる本スクリプトを開発。さらに、UIも開発することで誰でも簡単に画像前処理ができるようにしました。

## 実行方法
https://github.com/Jake110ii/img2removeback/tree/main?tab=readme-ov-file

githubにソースコードはまとめていますので、gitに慣れている方は以降の記事をスキップして

元記事を表示

AWS Lambdaで、LINE Botにローディングアニメーションを表示

# ローディングアニメーション
Messaging APIに、ローディングアニメーション表示機能が追加されました。

https://developers.line.biz/ja/news/2024/04/17/loading-indicator/

メッセージを送信してから返答が来るまでの間、指定した秒数だけローディングアニメーションが表示されます。また、表示中に返答が来ると自動的に消えます。

loading_animation.gif

# 実装
既にGASで実装した記事は出ているため、今回は、AWS Lambdaで実装しました。
ローディングアニメーションの部分だけ抜き出すと下記のようになります。

UserIDは環境変数から取得しています。

“`lambda.py
# LINE Botの設定
li

元記事を表示

HEICをjpgに変換するコード

## HEICをJPGに変換する
iPhoneで写真を撮る時デフォルトだとHEIC形式で保存されます。HEIC形式だと画像処理をする際何かと不便なので、pythonでjpgに変えてしまいましょう!

注意:iPhoneの設定を変えることでjpg形式で撮影することは可能です

## 前提条件
pyheifをインストール
“`bash
pip install pyheif
“`

## コード
“`python: heic2jpg.py
import os
import pyheif
import shutil
from PIL import Image

# 入力フォルダと出力フォルダのパス
input_folder = “
output_folder = “

# 出力フォルダが存在しない場合は作成する
if not os.path.exists(output_folder):
os.makedirs(output_folder)

num = 0
# 入力フォルダ内の画像ファイルを走査して変換する
for f

元記事を表示

conda + miniforge3を用いたPython開発環境の導入

M2 Mac上におけるpython(開発)環境の構築の記録

参考
* [Pythonのパッケージ管理ベストプラクティス](https://qiita.com/c60evaporator/items/b6a7394231d1e768ce64#3-conda–conda-forge)
* [Conda + Miniforge3でM1 MacのPython開発環境を構築する](https://for.kobayashiii.dev/articles/67e1ce03th)

## Miniforge3のインストール

1. [Miniforge](https://github.com/conda-forge/miniforge#download)から“Miniforge3-MacOSX-arm64“をクリックしてダウンロードする(Python 3.10)。
1. “Miniforge3-MacOSX-arm64.sh“が“Downloads“にダウンロードできたならインストーラーを実行する。
“`
cd ~/Downloads
“`
“`
bash Miniforge3

元記事を表示

スペリング能力が向上したStable Diffusion 3で文字を含む画像を生成してみた(DALL·E 3との比較もしてみた)

[Supership](https://supership.jp/)の名畑です。[響け!ユーフォニアム3](https://anime-eupho.com/)を見ながら、本当に、アニメーション作品としての質が高いなと感じるわけです。アニメーションとは命を吹き込むことだなと。

## はじめに

[Stability AI](https://ja.stability.ai/)が今年の2月、画像生成モデルである[Stable Diffusion 3.0](https://stability.ai/news/stable-diffusion-3)を発表し、話題となりました。

> Stable Diffusion 3は旧モデルと比較して、画質および様々なプロンプトへの対応が大幅に向上した最新のText 2 Imageモデルだ。
>
> 特にこれまでのモデルでは難しかった「画像内での正確なアルファベット表記」が可能になっている。
>
> 参考:[ASCII.jp:テキストが崩れない! 画像生成AIの最新版「Stable Diffusion 3」登場](https://ascii.jp/ele

元記事を表示

健康的に鳥貴族で酒を飲みたいので数理最適化問題でメニューを勧めてもらった!

# 健康的に鳥貴族を食べたい

鳥貴族は、3大都市圏を中心に店舗を展開している居酒屋チェーン店です。
全品税込み370円なので、とても安価で食べられるのでかなり好きです。よく行ってます。

ただ、居酒屋メシというものはどうしてもPFCバランスが悪くなりがちで健康面で心配です。
**酒以外**の要素で健康を害したいとは思いません。

なので、今回は取りたい栄養素をあらかじめ入力することでそれを満たす最小カロリーの鳥貴族のメニューをリコメンドしてくれるプログラムを作ってみました。

# 今回の課題

幸いなことに、鳥貴族はメニューの栄養素をすべて公開してくれています。
例として、もも貴族焼 たれは以下の栄養素となっております。
| 成分 | 量 |
|————|——|
| エネルギー | 350 |
| タンパク質 | 26.3 |
| 脂質 | 21.6 |
| 炭水化物 | 9.5 |
| 食塩 | 1.9 |

このようになっているので、
以下の条件を満たすようなメニューの組み合わせを探します。

| 成分

元記事を表示

sbomdiffの使い方説明

– [コマンドの説明について](#コマンドの説明について)
– [実際にSBOMの差分を検出してみる](#実際にsbomの差分を検出してみる)
– [仮想環境の構築](#仮想環境の構築)
– [パッケージに対する変更とSBOMの生成](#パッケージに対する変更とsbomの生成)
– [初期:パッケージのインストールとSBOM生成](#初期パッケージのインストールとsbom生成)
– [変更1:パッケージのアップデートと追加、SBOM生成](#変更1パッケージのアップデートと追加sbom生成)
– [変更2:パッケージの削除、SBOM生成](#変更2パッケージの削除sbom生成)
– [SBOMの差分を検出](#sbomの差分を検出)
– [パッケージのバージョンやライセンス変更、新規追加パッケージの検出](#パッケージのバージョンやライセンス変更新規追加パッケージの検出)
– [削除されたパッケージの検知](#削除されたパッケージの検知)
– [sbomdiffをshellスクリプトで利用するときの注意点とその対策](#sbomdif

元記事を表示

Django REST frameworkとReactでJWT認証

## はじめに

個人開発で、DRFとReactで認証処理を作成しました。
普段は日記がてら投稿しているのですが、ある程度まとめたものを投稿しようと思います。

### 認証関連の記事

* [個人開発記録 2024/05/07](https://qiita.com/kare-pan/items/21aa787c6ee0593e287d)
* [個人開発記録 2024/05/06(djangoでログイン機能を実装)](https://qiita.com/kare-pan/items/7a910401dc0035761813)
* [個人開発投稿2週間分の振り返り](https://qiita.com/kare-pan/items/e3367c91f1037987236b)

## インストール

dj-rest-authとdjangorestframework-simplejwtをインストール。
dj-rest-authは簡単に認証処理をカスタマイズできるライブラリで、
djangorestframework-simplejwtは、簡単にJWT認証を実装できるライブラリです。

元記事を表示

物書き界隈を追い出されたので異世界で形態素解析することにしました

## はじめに

最近、小説投稿サイトでライトノベルを書いていて、コードを書いていませんでした。生成系AIが一般化したので、もともと文系の私にとっては、小説の方が自分で書く意味を感じられます。ということで、Xの相互フォロワー様はほとんど小説投稿サイトの方々です(※別に追放されてません)。

ある時、界隈で擬人法(personification)の修辞的技巧について会話することがありました。人物に適用する形容詞を物質に適用するなどの技法が一般的です。ふと、テキストをマイニングして形容詞と名詞を抽出しランダムに組み合わせると、新たな擬人化の発想が出てくるのではないかと思い、それを試してみることにしました。

今回はjanomeとGiNZAを使ってみます。門外漢のため(※転生してきたので)、誤解などあるかもしれませんが、ご容赦ください。

## 環境
Windows11 64bit
Python 3.10.11
janome 0.5.0
GiNZA 5.2
“`
$ pip install janome
$ pip install ja-ginza
“`

## janome版

自分の

元記事を表示

LightGBM初期パラメータの決定境界

ふと「そういえばランダムフォレストとGBDTって仕組みが違うよな」って思ったので決定境界を見てどのように分類されているのか見てみたくなりました。

# 決定境界の関数
過去の記事から持ってくる

https://qiita.com/murasaki1994/items/7b116747a022aa9805f0

“`Python3
from sklearn import preprocessing
import matplotlib.pyplot as plt
import numpy as np
def showline_clf(x, y, model, modelname, x0=”x0″, x1=”x1″):
fig, ax = plt.subplots(figsize=(8, 6))
X, Y = np.meshgrid(np.linspace(*ax.get_xlim(), 1000), np.linspace(*ax.get_ylim(), 1000))
XY = np.column_stack([X.ravel(), Y.ravel()])

元記事を表示

Pythonで〇×ゲームのAIを一から作成する その80 リプレイ機能の残りの問題の修正

# 目次と前回の記事

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

https://qiita.com/ysgeso/items/94fba56cb97dc4787ca8

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

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

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

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

https://github.com/ysgeso/marubatsu/blob/master/080/util.py

## ルールベースの AI の一覧

ルールベースの AI の一覧については、下記の記事を参照して下さい。

https://qiita.com/ysgeso/items/10d1d01192c014173e4b

# リプレイ機能の問題点(再掲)

前回の記事では、下記のリプレイ

元記事を表示

PythonでAWS CLIコマンド実行の練習

# 目的
PythonでAWS CLIの実行方法を覚えるために、EC2のスループット値を取得してみる

# AWS CLIコマンドの確認
下記コマンドでスループット値を取得できることを確認
“`:コマンド
aws cloudwatch get-metric-statistics \
–namespace AWS/EC2 \
–metric-name NetworkIn \
–dimensions Name=InstanceId,Value=i-085509fb0174af9cd \
–period 2628000 \
–statistics Maximum \
–start-time 2024-05-01T06:15:00+00:00 \
–end-time 2024-05-10T06:30:00+00:00
“`
“`bash:出力
(python_env) [ec2-user@ip-172-31-32-217 ~]$ aws cloudwatch get-metric-statistics \
–namespace AWS/EC2 \
–metric-nam

元記事を表示

Python Tkinterとラズパイで自分専用のダッシュボードアプリを作ってみる #3 時計を表示させる

# 概要
デジタルダッシュボード作成 第三弾。

https://qiita.com/inugami_sayo/items/61b0c5b95af840551b33

の続きです。
今回は時計の表示と実際に借りのダッシュボードに表示させてみます。

この記事はそのメモやまとめです。
すでに設定済みの項目がいくつかある。
試行錯誤しながらやったので、手順として不要かもしれない。**あくまでメモ用。**

# 実装したい内容とか整理
ここでは
・現在時刻(表示 大)
・日付(表示 小)
の表示を目指します。

## 作ってみる
https://atmarkit.itmedia.co.jp/ait/articles/2111/09/news015.html

の記事とchatgptを参考にしつつ、自分で必要な情報へと少し変更を加えます。
以下のようになりました。

“`python:clock.py
import datetime

t_delta = datetime.timedelta(hours=9)
JST = datetime.timezone(t_delta, ‘JST’)
n

元記事を表示

dict の特性(python)

[Python3.7](https://docs.python.org/3/library/stdtypes.html#dictionary-view-objects “Python3.7”) 以降では dict の順序(追加された順番)が保証されるようになりました。

当たり前の動作に思えますが、Python のバージョンによっては当たり前ではないため確認する必要があり、実際に以下の動作になることが確認できました。

## next, iter
“`
test = {“key1″:”value2”, “key2″:”value1”}
test_iter = iter(test)
print(next(test_iter))
print(next(test_iter))

# 実行結果
key1
key2
“`

“`
test = {“key1″:”value2”, “key2″:”value1”}
test_iter2 = iter(test.values())
print(next(test_iter2))
print(next(test_iter2))

# 実行結果

元記事を表示

ベクトル計算

“`python
# 自作ライブラリ(グラフ描写編)

import plotly.graph_objects as go

class Scatter3DPlot:
def __init__(self):
self.fig = go.Figure(data=go.Scatter3d())

def config_set_xyz_range(self, x_range, y_range, z_range):
# レイアウトの調整
self.fig.update_layout(
scene=dict(
xaxis=dict(range=x_range),
yaxis=dict(range=y_range),
zaxis=dict(range=z_range),
aspectmode=’cube’ # 各軸のスケールを揃える
)

元記事を表示

【投資入門】PER、EPS、そしてROEを生かして株価評価して遊んでみる🎵

新NISAで積立NISAすればとりあえず、ドルコスト平均法の仕組みで、定額投資を20年続ければ資産形成できそうである。
しかし、肝心なこととして、何に投資すべきかは今一つわかりにくい。
また、20年も待てないよという人向けに、ずばり、株価や企業業績を評価しつつ投資する方法を検証して示してみようと思う。

参考
①[企業の業績を把握するために株式を分析する](https://qiita.com/ynakayama/items/53a73aae5fee989f25c1)

まず、参考①より、以下の諸量が企業評価に重要だということです。
### PER (株価収益率) Price Earnings Ratio
株価が割安か割高かを判断するための指標。利益から見た「株価の割安性」。
株価が「1株当たりの当期純利益(単に1株当たり利益、1株益ともいう)$=EPS$」の何倍になっているかを示す指標。
$ PER=\frac {株価}{1株あたり当期純利益} $
参考
[PER@金融・証券用語集](https://www.jsda.or.jp/jikan/word/116.html)
### PBR

元記事を表示

DBを作ってみる ♯初心者

## 初心者がDBを作ってみた
###### プロセス
1\. pokeAPIから必要なデータをGet
2\. GetしたデータをDataFrame(元df)に格納
3\. Getしたデータのうち、単純なデータではなく「ネストされた値」を単純データにして、別のDataFrameに格納
4\. 元dfに別のDataFrameのデータをMerge
5\.単純データで構成されたdfをSqliteファイルに変換
###### 参考になったサイト
(作者の方、ありがとうございました。)

ポケモンで学ぶPython|#0 PokeAPIでポケモンデータを取得する


###### 完成したmokemon_db
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3761000/b2d1dba5-45bc-5fbe-d213-9398415b882c.png)

元記事を表示

OTHERカテゴリの最新記事