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

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

PythonによるGlobally Coupled Mapの相図を描画する

### Step1. 写像を定義
~~~
import numpy as np
import matplotlib.pyplot as plt
import random

# 写像を定義
def f(x, alpha):
y = 1 – alpha*x*x
return y

def coupled_f(x_list, alpha, e):
total = 0
y_list = []
num = len(x_list)

for n in range(num):
total += f(x_list[n], alpha)
for n in range(num):
y_list.append((1 – e) * f(x_list[n], alpha) + (e / num) * total)
return y_list
~~~

### Step2. 時系列の生成
~~~
# 時系列の生成
def series(alpha, e, initial, length, trans_period):
num_coupled = len(ini

元記事を表示

楽しいカードゲームを作るまでの記録~その1~

## まずは Python で簡単なカードゲームを作成する
### 【ゲームの仕様】
1.プレイヤーとエネミーの手札(1~12)をランダムに3つ生成する
2.プレイヤーから入力(手札の選択)を受け付ける
3.選択された手札とエネミーがランダムに選択する手札で勝負する
4.高い数字の手札を出した方が勝利する
5. 1は12に勝利する
6.勝負を2回繰り返し、勝利数の多い方がゲームの勝者となる

### 実行するPythonファイル
◆コンセプト
実行モジュールからはロジックを排除し、上から下へ実行していくだけにする

“`py
import parts

# 勝敗情報(1戦目・2戦目・最終結果)
result = [list(),list(),list()]

# プレイヤーの手札を生成する
p_number = parts.initializeNumber()

print(‘player number is [‘ + ‘,’.join(map(str, p_number)) + ‘]’)

# プレイヤーの手札の選択する
p_input = input(‘Enter your nu

元記事を表示

Databricksのノートブックの修正と複製を自動化することで生産性を向上させる方法の提案


## 概要

Databricks 開発時にノートブックの一部を修正して複製する作業を次のステップにて大量に実施することがあります。退屈なことはPythonにやらせようと考えました。実装方針とコードを共有します。

1. ベースノートブックの内容をエクスポート
2. ノートブック内容の一部を修正
3. 別名のノートブックとしてインポート

## 実装方針

### ノートブックのエクスポートとインポート

ノートブックのエクスポートとインポートを自動化する方法としては、Databricks SDK for Python と Databricks REST API があります。簡易的に利用できる Databricks SDK for Pythonを紹介します。

– [Databricks SDK for Python (Beta) — Databricks SDK for Python beta documentation (databricks-sdk-py.rea

元記事を表示

パケットをPythonで分析してみる① プロトコルのパレート図

# はじめに
Pythonを使ってネットワークのパケットを分析してみる。
今回はキャプチャーファイル(tcpdumpの結果)から作ったCSVをPythonで読み込み、プロトコル別にパケットを集計してグラフ化する。
キャプチャーファイルからCSVを作成する方法はこちらを参照。

https://qiita.com/ymiki0001/items/050911c0217881bc8d7f

# 前提
* JupyterNotebook
* 適当なtcpdumpから作ったCSVファイル(サンプルではYahooのトップページにアクセスした際のキャプチャーを使用)

# 必要なモジュールのインポート
今回使用するモジュールをインポートする。
なお、以降は全てJupyterNotebook上で実行している。
“`
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
“`
# CSVの読み込み
CSVをデータフレームdfに読み込む。
“`
df = pd.read_csv(‘test002.csv’, i

元記事を表示

【生成AIアプリ100チャレンジ】(12)画像解析アプリ VISION API

# 公開サイト

https://ai.nuevo.jp/vision/
※ユーザー限定

# 開発環境

| | |
|:————:|:————:|
| Server | lightSail |
| Language | Python3.11 |
| Framework | Django |
| DB | sqlite3 |

ローカル環境ではPythonのvenvを使用。エディタはvs codeです。

# 目的
画像解析の生成AIであるvison apiをつかったアプリ。アップした画像の説明をしてくれる。
最初はプロンプトの規定は「日本語で返して」という設定のみ。このプロンプトを設定すれば、「なんの食材か」「なんの機材か」のみレスポンスを返すようになるのかは、後日チャレンジしたい。

# コード
“`python:qiita.rb
OPENAI_API_KEY = os.environ[‘OPENAI_API_

元記事を表示

衛星データでつくばみらい市の土壌分類をしてみた(地理空間データ解析)

# はじめに
以前[「衛星データでつくばみらい市の変化を見てみた(地理空間データ解析)」](https://qiita.com/chicken_data_analyst/items/ed3a6002e82d4ea63556)という記事を書いた。
衛星データによるバンド演算結果可視化やクラスタリング、モラン$I$統計量の計算などをPythonで実施するという内容だった。
ただあまり、空間統計には踏み込まなかったので、今回は条件付き自己回帰モデル(Conditional Auto-Regressive model;CAR model)で空間データのモデリングを実施していく。

やることを分けると以下の順で5つある。
1. 衛星データダウンロード
2. 小地域の境界データダウンロード
3. 衛星データの前処理
4. 土壌分類データダウンロード
5. バンド演算
6. モデル構築(多項分類)

1~3は[「衛星データでつくばみらい市の変化を見てみた(地理空間データ解析)」](https://qiita.com/chicken_data_analyst/items/ed3a6002e

元記事を表示

【Python】Spotifyのプレイリスト作成をAWS Lambdaで自動化する

## TL;DR

– この記事では、PythonからSpotify Web APIを操作できるライブラリである**Spotipy**を使用して、プレイリスト作成を自動化する方法を紹介します。スクリプトの自動実行には**AWS Lambda**を使用します。

– プレイリストに入れるトラックの選定は、Spotify Web APIで提供されているレコメンド機能に基づき行っている(=使用するのみ)ので、推薦アルゴリズムの実装や工夫は特にありません。

– 自分の音楽好みに合わせたプレイリストを効率的に作成したい方や、SpotifyのAPIを使ったプロジェクトに興味がある方の一助となれば幸いです。

– 使用ツール、サービスは、以下の通りです。

– Python
– Python依存パッケージ (pandasなど)
– Spotify Web API (APIキーの発行に必要)
– Spotipy
– AWS Lambda、その他AWSのサービス (無料枠で対応できる範囲だと思います)

全体の処理のイメージは以下の通りです。

![aws-lambda-spoti

元記事を表示

python-docxでワードのヘッダー、フッターを各セクションごとに違う値にする

# はじめに
ワードの文書作成の自動化というのは、結構あるあるだと思う。
筆者はpythonを主に使用するので、python-docxで自動化するかーと軽い気持ちでやっていたが、思ったより大変だったので、今回躓いた内容を記しておく

ちなみに、公式ドキュメントを自分で漁れる、または躓いたところなんてオプションをちゃんと見れば解決できるっしょ!という、つよつよエンジニア向けではないのであしからず…当方、社会人になってからプログラムをやっている雑魚エンジニアなので、公式ドキュメントを見てばっちり分かるタイプではないんや…

# 躓いた内容
ワードの文書でヘッダー、フッターというのがある。主にページ数とかを書くものである。
今回は、そのフッターに各ページごとに違う文字を入れたい!と思っていたが、とりあえず作ったものでは全く機能しなかった。
すべてのフッターの値が、最後に更新した値になっていたのである。

# 解決策
解決した際のコードを貼っておく
“` python
import docx # python-docxのインポート

# 新しいワードの作成
doc = docx.D

元記事を表示

Djangoとハギングフェイスライブラリを用いてローカルLLMで動くLINE_botを作る。

:::note
DjangoでLINE botを動かす手順は[こちら](https://qiita.com/njn0te/items/d717840dc2addeae6439 “タイトル”)の記事を参考にさせていただきました。詳しい解説はリンクをご覧ください。
:::

## Djangoとハギングフェイスライブラリを用いてローカルで動くLINE_botを作る

#### 目次
・LINE developers側の設定
・Django側の実装
・公開設定
・ローカルLLMの設定
・実際に動作させる

## LINE developers側の設定
[ラインデベロッパーズ](https://developers.line.biz/ja/,”line”)にログインしてください。

その後、プロバイダーを作成して

![LINE Developers および他 6 ページ – 個人 – Microsoft​ Edge 2024_04_04 18_14_31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3763

元記事を表示

MatlabからPython関数を呼び出す

# 目標:MatlabからPythonの関数を呼び出せるようにする

### はじめに
+ 本稿は自分自身の覚書として作成した
+ 本文中の各サイトを参考にしながら、一連の流れがわかるように手順を残す
+ 各サイトから有力な情報を得られました。大変感謝です
+

### 手順
1\. Pythonをインストール
2\. 外部パッケージをインストール
3\. Matlabから外部パッケージをインポート
4\. Matlabでパッケージを呼び出し、テスト実行

### 動作環境
| 項目 | 条件 |
|:-:|:-:|
| OS | windows10 64 bit |
|Matlab|version 2024a|
|Python|version 3.11|

# 1. Pythonをインストール
+ MatlabのバージョンにあったPythonをインストールする(下記リンク参照)
https://jp.mathworks.com/support/requirements/python-compatibility.html

+ インストールが終わったら、下記コマンドを実行

元記事を表示

Streamlit で驚くほど簡単に地図を表示できた話

以前から、聞いたことはあるけど使ったことがなかった **Streamlit** なのですが、キャッチアップする時間を確保できたので色々と検証していたところ、(筆者の主観ですが)驚くほど簡単に地図を表示できたので、ここにメモしておきたいと思います。

コードは次の通りです。

“`python
import streamlit as st

st.map()
“`

たったこれだけで地図が表示できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/759747/20364eb4-1a35-d7e1-9c53-acc064279970.png)

ちなみに、streamlit のバージョンは `1.32.2` を使用しました。

`st.map()` は `st.pydeck_chart()` のラッパーだそうで、3D マップや点群などもサポートしているそうです。

[公式サイト](https://docs.streamlit.io/library/api-reference/cha

元記事を表示

予習シリーズ算数と面積図と連立方程式と線形代数学

面積図のプログラム
“`
import matplotlib.pyplot as plt
#1個70円の品物Aと1個120円の品物Bを合わせて20個買ったところ、代金は1850円でした。Bを何個買いましたか
#定数の値
#AとBは固定
A = 1
B = 1
a = 20
C = 70
D = 120
b = 1850

# 式の計算
F = (a * D – b * B) / (A * D – C * B)

# 点の座標
points_red = [(0, 0), (0, C), (F, 0), (F, C)]
points_blue = [(F, 0), (F, D), (a, 0), (a, D)]

# プロット
plt.scatter(*zip(*points_red), color=’red’, label=’Red Points’)
plt.scatter(*zip(*points_blue), color=’blue’, label=’Blue Points’)

# ポイントの値を表示
for point in points_red:
plt.text(

元記事を表示

Pythonで「ファイルを開く/ファイルを閉じる」の動作を確認してみた

# 概要

Pythonで「ファイルを開く/ファイルを閉じる」の動作を確認してみました。
以下のページを参考にしました。

https://www.javadrive.jp/python/file/index1.html

# 実装

以下のファイルを作成しました。
“`sample.py
f = open(‘myfile.txt’, ‘r’)
data = f.read()
print(data)
f.close()
“`
“`myfile.txt
明日の天気はどうだろう。
晴れるといいな。
“`

以下のコマンドを実行しました。
“`
$ python3 sample.py
明日の天気はどうだろう。
晴れるといいな。

“`

# まとめ

何かの役に立てばと。

元記事を表示

python project path

“`py
import os;from pathlib import Path
rootPath = Path(os.path.dirname(__file__)).parent
import sys;sys.path.append(os.path.relpath(rootPath, os.path.dirname(__file__)))
“`

元記事を表示

Pythonでわかる予習シリーズ理科5年

予習シリーズ理科についてPythonでわかろう

https://www.python.jp/install/anaconda/windows/install.html
予習シリーズ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3760770/b4533afb-9939-e507-0e75-863b273eec2c.png)

https://openai-chatgpt.jp/
コードはコピーペーストしてチャットGPTに質問しよう
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3760770/bde9bc47-464e-de2e-fc62-6889a3a1cc27.png)
ワニの表紙のPythonコードを作りました

第3回p30
密度×体積=重さ
“`
import numpy as np
import matplotlib.pyplot as plt
from mpl_to

元記事を表示

Streamlitの面白い&便利なエレメントまとめ

# はじめに
自分がStreamlitを使っていて、「便利だな~」「こんなエレメントあったのかw」と思ったものを独断と偏見でまとめてみました。

使い方は公式ドキュメントがすごく見やすいので、エレメントごとに公式のURLを添付しながら紹介します。

## アスキーアートを表示させたい

以下のようなアスキーアート(AA)を表示させたいとします。その時に使えるのが`st.text`です

“`python
art = “””
動くなッ!
∧__∧ ファボを打ち込むぞ
( `Д´ )
(っ▄︻▇〓┳═☆
/   )
( / ̄∪
“””

st.title(“st.textで表示”)
st.text(art)

st.title(“st.writeで表示”)
st.write(art)
“`
結果

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/456646/d6438dc9-3e40-6422-6508-c75f35e9cd12.png)

https://docs.streamlit.

元記事を表示

Pythonで〇×ゲームのAIを一から作成する その69 画像の描画のタイミングと丸めによる座標の変換

# 目次と前回の記事

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

https://qiita.com/ysgeso/items/1920c68f5a1e8a998796

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

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

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

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

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

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

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

# マウスによる着手の入力の実装

前回の記事で、ゲーム盤の __画像の上__ で __マウスを押した際__ に __処理を行う方法__ を紹介したので、その方法を使って __ゲーム盤上_

元記事を表示

箱入り娘パズルを解く

## 箱入り娘パズルをプログラムで解く
### 概略
先日、とある科学博物館に立ち寄って「箱入り娘」というパズルに出会いました。結論から言うと、閉館までに解くことはできず、消化不良な感じで終わりました。なんかプログラムで解けそうな気がしたのでやってみたら解けました。

### 問題設定
15パズルを変形したような問題設定です。
以下の図ように4×5のマスの中に図のような様々な形の長方形が押し込まれています。この各長方形を人に見立てたパズルです。中央下の白い場所を玄関として、全ての人が外に出ることなく、2マスだけある隙間を譲り合いながら中央上にいる娘を外に出す、というパズルです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3746743/c9d9fe0e-f9b6-d90f-9578-9289ed7fd798.png)
これちゃんと解ける問題なんだろうな?と疑いたくなる設定でした。

### 時間のない人へ
一番下までスクロールしたら、娘が出ていくところまでの動画が見られますのでスクロ

元記事を表示

新馬戦予測モデルをチャットベースのアプリにしてみた

# はじめに

以前作った掲示板データから新馬戦の予想を試みて惨敗した記事を基に、チャット形式で予想できるアプリを作りました。

https://qiita.com/sugimochi_1019/items/db3df59876a0b5b7bbd8

以前からstreamlitの`Chat elements`は触ってみたかったので、アプリにしてみました。
結論から言うと、とても簡単に実装できるのでぜひ使ってほしいと思いました!

# ユーザからの入力を受け取る

以下のようにしてユーザからの入力(prompt)を受け取る部分を作ります。
受け取る際にbotの返答も記録し、チャット履歴として返します。

“`python
def input_prompt(chats):
“””ユーザからの入力を受け取る

Args:
chats ([dict]): 元チャット履歴

Returns:
[dict]: 更新後のチャット履歴
“””
# ユーザーからの入力を受け取る
prompt = st.chat_input

元記事を表示

【Python】Jupyter環境において、TensorFlowでGPUを使う

# はじめに
TensorFlowを用いて機械学習を行う際に、GPUを使用しないと、処理が遅いので
GPUを使用して解析する設定にしました。
本記事では、Visual Studio Codeをエディターとして用い、GPUを用いる際に必要なソフトウェアのインストール方法から、仮想環境とJupyter環境の構築まで説明します。
## 環境
### ハードウェア環境
|項目|値|
|:————–:|:—————–:|
|OS|Windows 11|
|CPU|12th Gen Intel(R) Core(TM) i7-12700|
|GPU|NVIDIA GeForce RTX 3060 Ti|
### ソフトウェア環境
2024/4/1において、TensorFlowはPython 3.9 ~ 3.11に対応
|項目|値|
|:—-:|:—–:|
|Python|3.9.13|
|Editor|Visual Studio Code|
# Microsoft Visual C++ 再頒布可能パッケージのインストール
(既にインストールされている

元記事を表示

OTHERカテゴリの最新記事