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

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

スマホの気圧センサーと台風

# はじめに
以前スマホのセンサーをPythonで操作するアプリをPlyerで作ってみたが(以下記事参照)、気圧センサーが本当に動作しているのか?がわからなかったが、ちょうど、今日台風7号がきていたので試してみた。

# 気圧センサーのデータ取得
[PythonでAndroidスマホの各種センサー情報を取得する。](https://qiita.com/tapitapi/items/51ddefc1dd8e810430c8)

barometer.pressureで取得。
“`python:Barometer
from plyer import barometer
#有効
barometer.enable()
#取得
output+=f’Barometer\n{barometer.pressure:0.2f} hPa\n\n’
“`

# 結果
台風が近づくとどんどん気圧が下がっていく事がわかる。あらためて数値で見てみると面白い。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/129

元記事を表示

PythonでOpenAI APIを実行する際の備忘録

PythonでOpenAI APIを実行する際の備忘録です
基本的には、[PythonでOpenAI APIを実行する方法](https://qiita.com/yamii/items/914fcae6599a4ac9f9fd)を参照させて頂き実行すればOK
..と思ったが、`openai>=1.0.0`ではパッケージの利用方法に差分があるらしく以下の`warning`メッセージが出力されてしまった。これに伴い、以下のようにプログラムを更新しました。

### `warning`メッセージ

> You tried to access openai.ChatCompletion, but this is no longer supported in openai>=1.0.0

“`python:
You tried to access openai.ChatCompletion, but this is no longer supported in openai>=1.0.0 – see the README at https://github.com/openai/openai-

元記事を表示

pythonでopenai APIを実行したときに`Incorrect API key provided: sk-proj-`と表示されてしまう際の対策備忘録

pythonでopenai APIを実行したときに`Incorrect API key provided: sk-proj-`と表示されてしまう。
→ API Keyを再発行して利用すればOKである事が多い。
→ API keyが無効になっているか、間違っているか、利用不可になっている(例えばAPI KEYをうっかり公開してしまい自動的に利用不可になったなど)

“`
raise self._make_status_error_from_response(err.response) from None
openai.AuthenticationError: Error code: 401 – {‘error’: {‘message’: ‘Incorrect API key provided: sk-proj-************************************************************************************************************************GDYA. You can find y

元記事を表示

State Space Modelsでonline forecast (exogもあるよ) 備忘録

# 概要
少し前まではState Space Models(SSMs)というとRの独壇場だったけど、今はPythonでも同様のモデルを構築することができる。ここではガラパゴス語でほとんど情報がないStatsModelsを使ったSSMsのOn-line forecastを試している。

– 実施期間: 2024年8月
– 環境:Ubuntu22.04LTS
– Python: condaのPython3.10

書籍は何冊か購入したが中でも[これ](?__mk_ja_JP=%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A&crid=1UF0YD9J1Q8VV&dib=eyJ2IjoiMSJ9.OiC3mhNzMOmsQNPdh_KjARvjcI8hDltMPfkrEu_OAxzHhE324MIlkBzRkqrKeNK6M4pf48Dltv0cNfDFh6TDDv-5yph6LUGTz-OYtOOnYO74P1btP_Rku8SgQTawNGdfgmw_v8U2vzw3a26KqRDwQjIWkWJqHpr7hD6M77_zcIEeLzG6J8NV5IE0K41pF

元記事を表示

AWSのLambda(zip)をLambda(Image)として動かす

# この記事について

AWSのLambdaには、`zip`と`Image`の形式があります。
この2つの形式にはいくつかの違いがあります。一部を上げると、下の表のような違いがあります。

||zip|Image|
|:–|:–|:–|
|実行環境|AWSが提供したもの|自由|
|デプロイにかかる時間|数秒、ライブラリによっては数分|数分~数時間|
|Web上でソースを編集|ライブラリが小さければ可能|不可|
|デプロイできるファイルサイズ|50MBまで|10GBまで|
|docker|不要|必要|

この記事で紹介する実行方法は、`zip`と`Image`のいいとこどりをします。

||zip+Image|
|:–|:–|
|実行環境|自由|
|デプロイにかかる時間|数秒|
|Web上でソースを編集|可能|
|デプロイできるファイルサイズ|10GBまで|
|docker|不要|

`zip`としてソースコードをデプロイしながら、`Image`の自作ランタイム上で動かします。

# 実際に動かしているところ

実際に動かしているところをキャプチャで紹介します。
ginza(※

元記事を表示

Fakerを使って、テスト用のCSVファイルを簡単に生成したい

CSVをアップロードして、データベースのデータをアップデートできる機能を開発することって、よくありますよね?
そんなとき、本当に動作するのかテストがしたいけど、ダミーのデータを自作するのは難しいってことがよくあると思います。

そこで今回は、アップロードしてテストするときに使えるCSVファイルをお手軽に生成することができるFakerの使い方を見ていきたいと思います。

# Fakerとは?
[公式ドキュメントはこちら](https://faker.readthedocs.io/en/master/)です。

Fakerは、テスト用のダミーデータ(例えば、名前、住所、電話番号、メールアドレスなど)を生成するためのライブラリです。

データの生成そのものに特化していて、偽の名前や住所を生成する際に使います。単独で使用でき、簡単に利用可能です。
独自のスクリプトやテストコードで直接使用して、テストデータを手動で生成したり、シンプルにデータを埋め込んだりすることができます。

FakerはPythonがインストールされているPCで使用できます。Djangoプロジェクトを開発している際には、特に

元記事を表示

hello Python、hello Qiita

## 閑話
AIプログラミングに興味があったものの大量データを使うML/DLのアルゴリズムにいまいち共感できず、pythonに乗り気になれなかった。わたしの脳には大量のデータはないけど考え事ができる。大量データがいらないアルゴリズムが存在するはずだ。

しかし、脳についてきちんと知るにつれ、どんなに勉強しない人間でも頭にはビックデータ並みの大量のデータが入っていることを認めざるを得ず、ML/DLの仕組みに対する納得感は増すばかり・・・

四十半ばにして、pythonに手を付ける動機が整いました。

折角だから恥を捨ててGeekな人たちのふるまいを模倣し、今どきの技術者への生まれかわりを図りたい。。その一環として、Qiitaも始めてみた。

## 本題
### 環境
Windows11 64bit

### python インストール
1. 公式サイトのトップページ最下部メニューでDownloadから該当のOSをクリック
1. Stable Releasesからbitが合うインストーラーを選択
1. インストーラがダウンロードし、実行
【注意】標準/カスタムの選択画面で必ず”Add py

元記事を表示

pythonでgnuradio その15

# 概要
pythonでgnuradioやってみた。
練習問題やってみた。

# 練習問題
sin波を再生せよ。

# サンプルコード

“`
from gnuradio import analog, audio, blocks, gr

class my_block(gr.top_block):
def __init__(self):
gr.top_block.__init__(self, “top0″)
self.samp_rate = samp_rate = 48000
self.audio_sink_0 = audio.sink(samp_rate, ”, True)
self.wavfile_source_0 = blocks.wavfile_source(“a1.wav”, True)
self.connect((self.wavfile_source_0, 0), (self.audio_sink_0, 0))

if __name__ == ‘__main__’:
try:
my_block().run()
except Keyboar

元記事を表示

pythonでgnuradio その14

# 概要
pythonでgnuradioやってみた。
練習問題やってみた。

# 練習問題
sin波を録音せよ。

# サンプルコード

“`
from gnuradio import gr
from gnuradio import blocks
from gnuradio import analog

class my_top_block(gr.top_block):
def __init__(self):
gr.top_block.__init__(self)
samples = sample_rate = 48000
ampl = 0.3
src = analog.sig_source_f(sample_rate, analog.GR_SIN_WAVE, 440, ampl)
head = blocks.head(gr.sizeof_float, samples)
dst = blocks.wavfile_sink(“a1.wav”, 1, sample_rate, blocks.FORMAT_WAV, blocks.FORMAT_PCM_16)

元記事を表示

pythonでgnuradio その13

# 概要
pythonでgnuradioやってみた。
練習問題やってみた。

# 練習問題
1kHzのノコギリ波を表示せよ。

# 写真

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18104/38efe503-424f-3ecd-62e7-f895369f150e.png)

# サンプルコード

“`
from gnuradio import gr
from gnuradio import blocks
import sys
try:
from gnuradio import qtgui
from PyQt5 import QtWidgets, Qt
import sip
except ImportError:
sys.stderr.write(“Error: Program requires PyQt5 and gr-qtgui.\n”)
sys.exit(1)
try:
from gnuradio import audio
from gnuradio impo

元記事を表示

pythonでgnuradio その12

# 概要
pythonでgnuradioやってみた。
練習問題やってみた。

# 練習問題
1kHzのサイン波を表示せよ。

# 写真

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18104/83e17f6e-a948-3c22-86d5-e6c865585ead.png)

# サンプルコード

“`
from gnuradio import gr
from gnuradio import blocks
import sys
try:
from gnuradio import qtgui
from PyQt5 import QtWidgets, Qt
import sip
except ImportError:
sys.stderr.write(“Error: Program requires PyQt5 and gr-qtgui.\n”)
sys.exit(1)
try:
from gnuradio import audio
from gnuradio impor

元記事を表示

【データサイエンス】分析におけるデータ取得からモデリングまで

今回はデータ分析における流れを備忘録を兼ねて記録していきます。

モデルを作成する時間よりも、データの準備や出力結果の考察に時間や労力を使うのかなといった印象です。

# 時間がない人向け: この記事の概要
今回は[Bank Marketing](https://archive.ics.uci.edu/dataset/222/bank+marketing)を用いてモデリングをしました。

今回の目的は、**定期預金に申し込むかどうかを予測**します。

使用したモデルは
– 決定木
– ランダムフォレスト
– LightGBM

の3つです。
結果は以下の通りです。
| Model | Accuracy | AUC | Calculation Time |
|—————|———-|——|—————–|
| Decision Tree | 0.79 | 0.59 | – |
| Random Forest | 0.86 | 0.77 | 1.20 sec

元記事を表示

初心者向け!サンプル付きコードで学ぶPyTest

## はじめに

PyTestは、Pythonのための強力で使いやすいテストフレームワークです。このブログ記事では、PyTestの基本的な使い方から始め、初心者でも理解しやすい形で15の章に分けて解説します。各章では、実際のコード例を用いてPyTestの機能を説明します。

### 1. PyTestとは

PyTestは、Pythonのコードをテストするためのフレームワークで、簡潔な記述と強力な機能を兼ね備えています。PyTestは、少ないボイラープレートコードでテストを記述でき、assert文を使用してテストを行うため、非常に直感的です。

### 2. 環境のセットアップ

まず、PythonとPyTestをインストールします。仮想環境を使用することをお勧めします。以下のコマンドで仮想環境を作成し、アクティブ化します。

“`bash
$ python3 -m venv venv
$ source venv/bin/activate
“`

次に、PyTestをインストールします。

“`bash
$ pip install pytest
“`

### 3. 初めてのテ

元記事を表示

PythonのScikit-LearnとPlotlyを使ったデータの可視化

## はじめに: Scikit-LearnとPlotlyの概要

Scikit-Learnは、Pythonでの機械学習のための強力なライブラリであり、データの前処理、モデルの構築、評価などをサポートします。Plotlyは、インタラクティブなデータ可視化を可能にするツールで、データ分析を視覚的に理解するのに役立ちます。このブログ記事では、Scikit-LearnとPlotlyを組み合わせて、データの分析と視覚化を行います。

## Chapter 1: k-Nearest Neighbors (kNN) アルゴリズムの紹介

### 概要
k-Nearest Neighbors (kNN) は、分類や回帰のためのシンプルで直感的な機械学習アルゴリズムです。日本では、kNNは「k最近傍法」として知られ、特にデータサイエンスの初学者に人気があります。kNNは、データポイントの近接性を利用して、新しいデータのクラスを予測するために使用されます[1][2][3].

### コード
“`python
from sklearn.neighbors import KNeighborsCl

元記事を表示

【基礎から】PythonでExcel扱えるようにする(1)Python環境の構築

## 目的
Pythonプログラム上でエクセルを扱える環境を用意する。

## 環境構築のステップ
1) pythonのインストール
2) openpyxlパッケージのインストール
3) Visual Studio codeのインストール(任意)

### 1) pythonのインストール
[3] Windows版Pythonのインストール
https://www.python.jp/install/windows/install.html

### 2) openpyxlパッケージのインストール
[4] Windows環境でpythonのパッケージをインストールする方法
https://qiita.com/sim58/items/03f0eee74c9fffa39293

### 3) Visual Studio codeのインストール(任意)
[5] Visual Studio Code のインストール方法
https://qiita.com/YurimyMiyu/items/5ce7821f1e3e5905c3ee

## リンク
[1] Excel作成/編集を自動化!pytho

元記事を表示

Manim チュートリアル

## はじめに
この記事はPythonで数学の映像を作ることができる「Manim」について、簡単な使い方を説明したものです。
日本語での記事はあまりないので、作ってみました。

### 前提
– Pythonの基礎文法が分かる
– オブジェクト指向の基本がわかる
– Manimとその依存関係がインストール済み

### 環境
– Windows 11 Home
– Ubuntu 22.04 on WSL2
– Python 3.10
– Manim 0.18.1
– VScode (拡張機能:Manim Sideview)

## 目次 ##
**1.四角形を描画する**
シンプルなコードを通して、Manimの大まかな流れを掴む

**2.Manimの構成要素**
Scene, Mobject, Animation というManimの基本構造を理解する

**3.簡単なサンプルプログラム**
今までの知識を実践し、より深い理解を得る

**4.Manim独自の型と定数**
自分でメソッドとプロパティを使えるようになるための準備

**5.メソッド&プロパティ紹介**
より高度で複雑な映

元記事を表示

LangChainのTool callingとStructured outputを試す

## はじめに
LangChainのChatOCIGenAIでTool callingとStructured outputがサポートされたので検証してみます。
Tool callingはいわゆるFunction callingの機能です。OCI SDK単体ではすでに同じ機能が使えるようになっていますがそのLangChain版です。
Structured outputはプロンプトに対して生成AIから返却される内容を事前に定義した構造化データで返却してくれるものです。例えば、LLMを介して中間フォーマットのjsonファイルを出力し、別システム(またはwebapiなど)に食わせるケースなどで重宝します。
この2つの機能を紹介していきます。

https://python.langchain.com/v0.2/docs/integrations/chat/oci_generative_ai/

## LangChain+OCI GenAIを改めて動かす

初期設定です。コンパートメントIDを入力します。
※このchatは最後まで使います。
“`py:initiailze
from lang

元記事を表示

【Python】Pyocrを使用して受付機を考えてみた

connpassを使用しイベントを実施してみることにしました
受付などできない時間帯に変わりをしてくれるものが作れないかPythonを学び始めたこともあり試しに作ってみることにしました

簡単に実装イメージ、connpassの受付票を読み取って、スプレッドシートと照らし合わせOKなら通知出す形です

![スクリーンショット 2024-07-21 22.54.22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/276326/c818acc4-3753-b5f5-3879-cf450bc7bc56.png)

## 実装準備

### 読み取りを実装準備

関連ライブラリをインストール
“`
!pip install pyocr
!pip install opencv-python
“`

また日本語対応のためTesseractをインストール
今回windows使っていたのでこちらのサイトを参考に64bit版のTesseractをインストール

https://gammasoft.jp/blog/tes

元記事を表示

pythonのwebdriverを使っていたところOSErrorが出た件

# エラー内容
毎日のようにbatファイルからpythonをタスクスケジューラ実行しているのですが、先日いきなりこのようなログが返ってきました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3480692/f368ee41-e555-5b28-7520-bc6df85853ed.png)

OSError:[WinError 193] %1 は有効なWin32アプリケーションではありません。

# 対処方法
Webdriverで困ったときはだいたいツイッターで検索して対処法を探すのですが、
今回もツイッターで既に対応方法を書いている方がいらっしゃいました。

https://x.com/alt_ego_project/status/1817923781748535785

最新版のアップデート
pip install webdriver_manager –upgrade

よく分かりませんが、こちらを実行すると問題なくpythonがまた実行できるようになりました。

私ももっとwe

元記事を表示

デジタル量子コンピュータ。全探索を高速計算。GPU時間: 26.0642秒。秘密の最適化を施し高速化すると GPU時間: 0.0592秒。

![cc4778c5-116a-48c2-8c9c-d776775cc887.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3838874/b1b02c27-af41-7542-0381-e6c64aea81f5.png)

https://qiita.com/tetsutakamurata76/items/5a87aff4bf6085b1c61b

https://qiita.com/tetsutakamurata76/items/025be26446cc6ba48e4d

### 全解探索を並列化して高速に計算。GPU時間: 26.0642秒。秘密の最適化を施し高速化すると GPU時間: 0.0592秒。
全ての解の可能性が重なり合った量子エンタングル状態。そして解を観測。このスピードがデジタル量子コンピューター。なーんてね。

#### ショートストーリー: 「東京のプログラマと巡回セールスマンの冒険」

東京の夜は静まり返り、ビルの一室にいる佐藤健一は、キーボードを叩きながら大きな画

元記事を表示

OTHERカテゴリの最新記事