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

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

4×4行列の積の計算方法(言語別)

# はじめに
CG計算における4×4行列の計算。
任意の点を中心に、任意の角度回転させるような、行列Mの計算例について、いくつかの言語で計算。できるだけ、何らかのライブラリを用いて、簡易に書けるように努力。

“`math
\begin{bmatrix}
1 & 0 & 0 & A \\
0 & 1 & 0 & B \\
0 & 0 & 1 & 0 \\
0 & 0 & 0 & 1
\end{bmatrix}
\begin{bmatrix}
S & 0 & 0 & 0 \\
0 & S & 0 & 0 \\
0 & 0 & S & 0 \\
0 & 0 & 0 & 1
\end{bmatrix}
\begin{bmatrix}
cos & -sin & 0 & 0 \\
sin & cos & 0 & 0 \\
0 & 0 & 1 & 0 \\
0 & 0 & 0 & 1
\end{bmatrix}
\begin{bmatrix}
1 & 0 & 0 & -A \\
0 & 1 & 0 & -B \\

元記事を表示

PythonでgRPCクライアントを作成する際の_InactiveRpcError解決法

### はじめに:
PythonでgRPCクライアントを作成し、外部のgRPCサーバーに接続する際に、`_InactiveRpcError`というエラーに直面することがあります。この記事では、この問題に遭遇した際の一般的な原因と解決策を紹介し、特にセキュアな通信を行うためのTLS設定に焦点を当てます。

### 問題の発生
PythonのgRPCクライアントからサーバーへのリクエストを送信した際に、以下のようなエラーが発生することがあります。

“`
raise _InactiveRpcError(state) # pytype: disable=not-instantiable
“`

このエラーは、gRPCコールが何らかの理由で正常に完了しなかったことを示しています。

### 原因の分析
この問題の主な原因は以下の通りです。

1. **接続問題**: サーバーへの接続が確立できない、または接続が途中で中断された。
2. **タイムアウト**: 指定された時間内にサーバーからのレスポンスが得られない。
3. **誤ったサービス定義**: クライアントが使用しているサービス定

元記事を表示

torch.nn.functional.one_hot で “RuntimeError: one_hot is only applicable to index tensor” したときの対処法

## はじめに
`torch.nn.functional.one_hot` で `RuntimeError: one_hot is only applicable to index tensor` したときの対処法です.
原因がわからなすぎて頭おかしくなりそうでした…

## 環境
* Python 3.11
* torch==2.1.2

## 具体例
“`Python
import numpy as np
import torch
import torch.nn.functional as F

arr = np.array([0,1,2,3,0,1,2,3,0,1,2,3])
arr_T = torch.tensor(arr, dtype=torch.int32)
T = F.one_hot(arr_T)

# RuntimeError: one_hot is only applicable to index tensor.
“`
一見問題なさそうですが,エラーを吐きます.

## 原因と対処法
`torch.nn.functional.one_hot` が対応している型

元記事を表示

Pythonの備忘録

## 文字列変数から標準入力を受け取る
“`python
import sys
import io

_TEXT = “””\
1 2 3
“””

sys.stdin = io.StringIO(_TEXT)
N = input()
print(N)
“`

元記事を表示

ディープラーニングによる二値分類タスク:閾値の操作とPyTorchの基本

# はじめに
二値分類問題は、データが二つのクラスのいずれかに属するかを判断するタスクです。メールがスパムか否か、画像に猫が含まれるかどうかなど、多くのアプリケーションで見られます。この記事では、PyTorchを用いた二値分類モデルの構築と、予測における閾値の適切な設定方法に焦点を当てます。

# PyTorchとは?
PyTorchは、FacebookのAIリサーチチームによって開発されたオープンソースの機械学習ライブラリで、その柔軟性とパワフルな機能により、研究者や開発者から広く支持されています。PyTorchは、動的な計算グラフを提供し、複雑なアーキテクチャの構築とデバッグを容易にします。

# データの準備と前処理
モデルの訓練に先立ち、データの準備と前処理が必要です。データをモデルに供給する前に、特徴量のスケーリングや正規化を行うことで、訓練プロセスを安定させ、収束を早めることができます。以下は、データの読み込み、標準化、および訓練セットと検証セットへの分割を行う基本的な手順です。
“`
import pandas as pd
from sklearn.model_sele

元記事を表示

AWS LambdaとGoogle Drive APIを使用したファイル転送の自動化

# AWS LambdaとGoogle Drive APIを使用したファイル転送の自動化

## はじめに

この記事では、AWS Lambda関数を使ってS3バケットからファイルを取得し、Google Driveにアップロードする方法について説明します。
Pythonを使用し、boto3とGoogle Drive APIを活用することで、ファイルの自動転送を実現します。

クラウドサービスを使用することで、ファイルの自動化された管理が可能となります。
AWS Lambdaはサーバーレスのコンピューティングサービスであり、Google Drive APIを使用することでファイルのアップロードや管理が簡単にできます。
この組み合わせにより、効率的なファイル管理システムを構築することができます。

## フロー

以下のシーケンス図は、AWS Lambdaを使用してAmazon S3からファイルを取得し、Google Driveにアップロードするプロセスを示しています。

1. **Lambda から S3 へ**: ファイルダウンロード要求
2. **S3 から Lambda へ**:

元記事を表示

居場所探しの為Pythonで物件データ分析 ~爬取したり可視化したり機械学習で予測モデルを作ったり~

この記事ではPythonを使って家探しサイト[SUUMO](https://suumo.jp)からデータを爬取スクレイピングして可視化して機械学習で予測モデルを作成することについて解説します。

コードも分析の結果も全部ここに載せます。

扱うデータは福岡市内の物件ですが、方法としてはどこの物件探しでも通用のはずなので、データ分析を勉強したい人のために役に立つかと思います。

# はじめに

就活して内定が決まって転職することになったので、次は引っ越しです。転職先は福岡県福岡市博多区。

(これについては以前の記事で書いて経験をシェアしたので興味があれば)

https://qiita.com/phyblas/items/7711f69bf20f862b0df5

仕事探しが終わって、これでもう楽になると思ったら次は「家探し」ですね。人生色々あって大変です。家探しってなんか色々就活と似ていてデジャヴュって感じもします。どれも自分の居場所探しだから。

私はまだ一度も福岡(というより九州)に行ったことないので、あまり何も分からなかったです。住

元記事を表示

AppSheet APIを用いたデータの取得方法

# AppSheet APIを用いたセンサーデータの取得方法

## はじめに
この記事では、AppSheetのAPIを利用して特定のセンサーデータを取得する方法を解説します。
Pythonを使い、AppSheetのAPIに対してリクエストを送信し、応答を受け取る実際のコードを見ていきましょう。

#### 関連リンク
* AppSheet公式ドキュメント
* [AppSheet API Guide](https://help.appsheet.com/en/articles/1979979-appsheet-api-guide)

## AppSheet APIの基本

AppSheetはクラウドベースのアプリケーションプラットフォームであり、カスタムアプリの作成を容易にします。
このプラットフォームは、外部アプリケーションとの連携をサポートするAPIも提供しています。

### 必要な情報
– `APPSHEET_APP_ID`: AppSheetアプリケーションのID
– `APPSHEET_APP_ACCESS_KEY`: AppSheetアプリケーションのアクセス

元記事を表示

kindle本をPower BIですっきり管理!【Python】

# はじめに

`kindle`は大型セールが頻繁にあるのでどうしてもたくさん買ってしまいがちですが、kindleアプリは使い勝手が~~ゴミ~~あまりよくないため書籍が増えてくると管理がしづらいと思います。

特に検索機能が問題で、**前方一致でしか検索が行えない**ためタイトル名を完璧に覚えていない場合に目当ての書籍を探し出すのは困難を極めます。

そこで、自分の所持している**kindleの書籍データからタイトル名や著者名から検索できる機能や分析できる機能**を`PowerBI`を用いて実装してみました。

# 書籍データの取得

## xmlファイルの入手

kindleのデスクトップアプリを入れると、以下のファイルパスに`xml`形式のファイルが自動保存されます。

“`plaintext: windows
C:\Users\user_name\AppData\Local\Amazon\Kindle\Cache\KindleSyncMetadataCache.xml
“`

“`plaintext: Mac
$HOME/Library/Containers/com.ama

元記事を表示

画像から3次元復元しよう!バンドル調整をpythonで実装してみる

# はじめに

バンドル調整(Bundle Adjustment)は、複数のカメラからの画像データを使用して、カメラの位置と姿勢と三次元点の位置を同時に最適化する手法です。最初の論文は、1958年にD. C. Brownによって提案された[^1]、かなり長い歴史を持つ技術です。

[^1]: D. C. Brown. “A solution to the general problem of multiple station analytical stereotriangulation” AFMTC-TR-58-8, ASTIA Document No. 134278, (1958)

当時はアメリカ空軍が航空写真からの環境復元するための研究でしたが、近年では、visual-SLAMやSfMの普及とともに、より身近なところで使われるようになりました。

有名なvisual-SLAM(例:orb-slam2やVINS-Mono)は、ceresやgtsam、g2oなどのグラフ最適化ライブラリを利用してバンドル調整問題を解いています。しかし、内部の原理をちゃんと理解しないと、課題の改善ができ

元記事を表示

TelegramBotでbotterとしてのポテンシャルを高めたい。

# 趣旨
テレグラムでサーバーから通知があれば便利だと思ったので最も基本的なテレグラムBotの構築方法を紹介します。
応用すれば色々使い道はあると思うので私としては備忘録として再利用するつもりです。

今回の例ではPythonからテレグラムの自分のアカウントに対してメッセージを送るだけですが、自分のアカウントからテレグラムBotにメッセージを送って、そのメッセージの内容に応じてPythonプログラムを起動させることも多分簡単にできます。

# ステップ1: Telegramボットを作成する
Telegramアプリで@BotFatherを検索し、チャットを開始します。
新しいボットを作成する:BotFatherに/newbotコマンドを送信し、指示に従います。
ボットの名前とユーザーネームを選択する必要があります。
ボットの作成後、BotFatherがAPIトークンを提供してくれます。

# ステップ2: チャットIDを見つける
Telegramでボットのユーザーネームを検索し、チャットを開始します。
ボットにメッセージを送信し、ブラウザで`https://api.telegram.or

元記事を表示

pydatasetについて ChatOpenAI に意見をもらう 第8部

– [「pydatasetについて ChatOpenAI に意見をもらう 第1部」 ](https://qiita.com/maskot1977/items/a88cf243a49932cb122d)
– [「pydatasetについて ChatOpenAI に意見をもらう 第2部」 ](https://qiita.com/maskot1977/items/7fef12f5e635963ea52f)
– [「pydatasetについて ChatOpenAI に意見をもらう 第3部」](https://qiita.com/maskot1977/items/740563ce8b646fa63f5e)
– [「pydatasetについて ChatOpenAI に意見をもらう 第4部」](https://qiita.com/maskot1977/items/ed661101e392782753dc)
– [「pydatasetについて ChatOpenAI に意見をもらう 第5部」](https://qiita.com/maskot1977/items/3a256fc0653a57954b4b

元記事を表示

画像に好きなものを登場させるAI HD Painter

画像を塗りつぶして…

![Feb-12-2024 20-38-20.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/235259/e6209d78-300f-7ddf-b16e-01f4524e1289.gif)

文章を入力 
“suits”

**HD Painter** というモデルでできます。

https://github.com/Picsart-AI-Research/HD-P

元記事を表示

3倍打点理論の考察

# はじめに
今回は野球についての記事です。
野球の魅力は色々なものがありますが、その中に多くの種類の記録が楽しめる点があります。
打率、ホームラン数、打点といった打撃記録、奪三振、防御率といった投手記録、またそれらをチームとして合計したチーム記録など様々な角度からの記録があり、野球ファンの間でも多く議論されています。

今回扱う記録は個人の打撃記録である打点(Run batted in: RBI)とホームラン(Home Run: HR)数についてです。
下記は2023年のセリーグの規定到達打者のホームランと打点の記録です。
(順番は打率の降順)
|選手|ホームラン|打点|
|:—-|:—-|:—-|
|宮﨑 敏郎|20|71|
|西川 龍馬|9|56|
|サンタナ|18|66|
|牧 秀悟|29|103|
|大島 洋平|0|23|
|大山 悠輔|19|78|
|坂本 勇人|22|60|
|近本 光司|8|54|
|中野 拓夢|2|40|
|大城 卓三|16|55|
|岡林 勇希|3|31|
|岡本 和真|41|93|
|秋山 翔吾|4|38|
|木浪 聖也|1|41|
|

元記事を表示

Colab上でお絵描きしてマスク画像をつくるツール

# Inpainting用のマスクをすぐ作れる
![Feb-12-2024 20-38-20.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/235259/66de3348-8664-b463-e86d-1c01042076ce.gif)
![myPhoto_mask.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/235259/3c257fcc-cf11-ff07-8e18-eb09a402abfe.png)

Inpainting(AI消しゴム)には画像と、マスク画像が必要です。
マスク画像とは、オリジナル画像と同じサイズで、消す部分が白、背景が黒、のグレイスケール画像です。
これをつくるツールってあんまりないので、Colabですぐお絵描きしてマスク画像が作れるツールが以下です。
描画を白黒マスクで保存でき、消しゴム機能もあります。

[**Colabリンク(セルを実行するとツールが出ます)**](https://col

元記事を表示

【アタイのつくったさいきょうCrawler♥】メルカリ2024q2決算のGMV予想 2/13 15時決算発表よ

# はじめに
オス!
【前回記事】

https://qiita.com/LightSign/items/180e068d0703df5690d7

# 3行で自己紹介
1. 元光通信の営業マンだよ
1. 31歳でプログラミング勉強し始めたよ
1. 32歳で法人向けwebアプリで起業し、今会社6年目突入したよ

# 3行で記事の概要
1. さいきょうCrawlerつくったよ
1. 出来はすんげー良いよ
1. 試しにメルカリのGMVほぼ一致させちゃうよ

# まずは結論
メルカリ2024q2(10~12月)のGMVは
2895億円
と予想。

[メルカリ決算リンク 2/13 15時以降見てね♥](https://about.mercari.com/ir/library/results/)

# どゆこと?
つまりアタイのCrawlerで集めたデータからsumしたアタイ(値)だよってこと
経済アナリストみたいに前四半期のGMVから算出してるわけじゃないよってこと

# いいからこの手順通りにデータsumして
デー

元記事を表示

[AtCoder忘備録] ABC340をPythonで解いてみた(A~D問題)



[ABC340](https://atcoder.jp/contests/abc340)をPythonで解いてみました。
自分なりの解き方・考え方を書いていければと思っています!!
## 目次
[A問題](#abc_a)
[B問題](#abc_b)
[C問題](#abc_c)
[D問題](#abc_d)


## [ABC340 A – 「Arithm

元記事を表示

【Python】ヘーゼルナッツの不良品検知をAIで行ってみた。

# はじめに
私は、某大学の薬学研究科を経て、現在は製薬メーカーの品質管理として働いております。
現場で働く中「医療×IT(AI)」という分野に興味を惹かれ、プログラミングを本格的に学び始めました。
今回はその第一歩として、
ヘーゼルナッツの不良品検知を、Pythonを使用した機械学習(転移学習)を
アプリとして実装してみました。

# 本記事の概要
– Pythonで画像認識等を行っている方に向けて、コードを説明しながら、アプリの実装までの過程を書いています。
– 熟練者の方が見ると、違和感があるかもしれませんが、そこは初心者が作ったものとしてご容赦ください。
– もし何かコメント等ございましたら、是非教えていただけますと幸いです。

# 実際のアプリケーション
まずは実際のアプリケーションをお見せします。
下記のリンクにアクセスして、ナッツの画像を送信すると、不良品を検知してくれます。

[Hazelnuts-Anomaly-Detection](https://hazelnut-anomaly-detection.onrender.com)

# 目次
1. 実行環境
2. 画像

元記事を表示

motoのバージョン5.x以降のimportエラーについて

# motoとは?
motoは、AWSの各種サービスをモックするためのPythonライブラリです。
DynamoDBやS3などのマネージドサービスをモックにすることで、実際のAWS環境を用意せずともローカル環境でpytestなどができます。

# moto v5系でのDecoratorの変更
そして、いつの間にかmotoのバージョンが5.xに上がりました。
https://docs.getmoto.org/en/5.0.0/docs/releases.html

今回のメジャーアップデートでの注意すべき点は以下です。
> All decorators have been replaced with mock_aws

今までは、“`@mock_s3“`や“`@mock_dynamodb“`のようにAWSサービス名でDecoratorを記載していましたが、今後は全て“`@mock_aws“`に統一されるとのことです。

これにより今まで作成したpytestをそのままmoto v5系の環境で使おうとすると、“`import Error“`にはまります。

“`Dynam

元記事を表示

第2回 金融データ活用チャレンジ -効率的なデータ分析・予測を行えるコードの紹介-

# 概要
– SIGNATEで2024年1月18日~2024年2月15日において開催中のコンペ「第2回 金融データ活用チャレンジ」のデータを可視化し、LightGBMでの予測を行ってみました。
– 可視化はSeabornを活用することで、0,1のデータの分布を比較的簡単に見ることができるようになります。
– 予測結果のファイル名を都度設定するのは面倒なので、notebookのファイル名がそのまま使えると便利ですよね。notebookの設定を自動的に読み取る方法も紹介します。
– とりあえずLightGBMで予測してみました。欠損値の補完などがなくても予測できてベースライン作成に便利です。
– Confusion Matrix や Classification Reportを使って予測結果を出力できるようにしておきましょう。

# データのインポート・前処理
## ライブラリのインポート

notebookの横幅を広げたいときには、IPythonのタグを活用しましょう。
下の例は、notebookの横幅を画面の90%まで広げてくれます。
“`python
from IPython.co

元記事を表示

OTHERカテゴリの最新記事