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

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

Pythonを使用したデータベースとExcelファイル間のデータのエクスポートとインポート

Excelファイルからデータをデータベースにエクスポートすることで、拡張性と高度なセキュリティを提供し、大規模なデータセットの効率的な処理を可能にし、同時実行制御による共同作業を促進します。逆に、データベースからExcelへのデータのインポートは、データ分析、視覚化、プレゼンテーションにおいてなじみ深いスプレッドシートインターフェースを提供し、複雑な情報をユーザーにアクセスしやすくします。強力なPython言語を用いることで、開発者はデータベースとスプレッドシート間のデータ転送を簡単に自動化することができます。

この記事では、SQLiteデータベースを例にして、**データベースからExcelファイルへのデータエクスポート**および**Excelファイルからデータベースへのデータインポート**をPythonコードで実現する方法を示します。

– **[Pythonを使用したデータベースからExcelファイルへのデータエクスポート](#pythonを使用したデータベースからexcelファイルへのデータエクスポート)**
– **[Pythonを使用したExcelワークシートからデータベー

元記事を表示

【python】paddleocrのSSLエラーとプロキシ設定

# 今回のエラー

“`python

def tst(img_path):
ocr = PaddleOCR(use_angle_cls=True, lang=’japan’)
result = ocr.ocr(img_path, cls=True)
for idx in range(len(result)):
res = result[idx]
for line in res:
print(line)

if __name__ == “__main__”:

img_path = ‘tst.pdf’
tst(img_path)

“`
を実行で

“`python
requests.exceptions.SSLError: HTTPSConnectionPool(host=’paddleocr.bj.bcebos.com’, port=443): Max retries exceeded with url: /PP-OCRv3/multilingual/Multilingual_PP-OC

元記事を表示

Llama-3-ELYZA-JP-8B を GPT3.5 と比較して使ったらすごかった

# Llama-3-ELYZA-JP-8B すごいんですけども

こんにちは、

昨日発表された、オープンソースLLM **Llama-3-ELYZA-JP-8B** を早速つかってみました&デモ公開しました

70Bモデルのほうは「GPT-4」を上回る性能とのことで、8Bモデルも相当期待!ということで、つかってみたら、本当に賢かったです!すごい。

# デモ公開しました

自分でさわってみたい、という方向けに、 **Llama-3-ELYZA-JP-8B** とチャットできるデモを当社Playgroundに公開しました

せっかくなので、 GPT-3.5 と比較できるようにしました。

左側に Llama-3-ELYZA-JP-8B、右側が GPT-3.5 になっています。(PC専用です)

https://chatstream.net/?ws_name=chat_app&mult=1&ontp=1&isync=1&model_id=llama_3_elyza_jp_8b&model_id=openai_gpt_3_5_175b

# 動画にしました

急いでる方向けに、3分動画に

元記事を表示

9次式 x9+x3+x2+x+1の因数分解「PASSLABO様の【伝説の京大模試】因数分解せよ」をWolframAlphaとgoogleとChatGPTとsympy でやってみたい。

・ChatGPT-3.5で実験しました。
・WolframAlphaでグラフがでます。

# オリジナル
>9次式の因数分解
・PASSLABO 様 (0:00〜8:26)

# WolframAlphaで
・WolframAlphaでグラフがでます。

https://www.wolframalpha.com/input?i=x9%2Bx3%2Bx2%2Bx%2B1&lang=ja

別の形
(x^4 + x^3 + x^2 + x + 1) (x^5 – x^4 + 1)

# googleで

https://www.google.com/search?q=x%5E9%2Bx%5E3%2Bx%5E2%2Bx%2B1&rlz=1CAUHAM_enJP1105&oq=x%5E9%2Bx%5E3%2Bx%5E2%2Bx%2B1&gs_lcrp=EgZjaHJvbWUyBggAEEUYOTIICAEQABgIGB4yCAgCEAAYCBgeMggIAxAAGAgYHjIICAQQABgIGB4yCAgFEAAYCBgeM

元記事を表示

Srable Diffusion 3 Mediumを使ってみた

## STable Diffusionとは
非常にわかりやすい記事があるので、そちらを参照

https://qiita.com/omiita/items/ecf8d60466c50ae8295b

## Srable Diffusion 3 Medium
Stable Diffusion 3 Mediumは、マルチモーダル拡散トランスフォーマー(MMDiT)とRectified Flowを使用した新しい画像生成モデル。

Srable Diffusion 3
・medium 20億パラメーター
・出力画像はデフォルトで1024×1024px

https://ja.stability.ai/blog/stable-diffusion-3-medium

https://arxiv.org/pdf/2403.03206

## ライセンス
学術研究などの非営利目的では自由に使用でき、商用利用は別ライセンスがないとできないようです。

https://huggingface.co/stabilityai/stable-diffusion-3-medium/blob/main/LICEN

元記事を表示

データ分析基盤構築:Terraformを用いたRDS、Glue、Redshiftによるデータ移行

# はじめに

本リポジトリは、Terraformを使用してAWS上にデータ分析基盤を構築し、RDSからRedshiftへのデータ移行を行うための手順をまとめたものです。これにより、インフラ管理の効率化とデータ分析の迅速化が可能となります。

作成したレポジトリーはこちらです。

https://github.com/sugiyama404/practice_aws_glue

# 目的
1. AWS上のデータ分析基盤を自動構築し、インフラ管理の効率化を実現
2. RDSからRedshiftへのデータ移行を自動化し、データ分析を迅速化

# アーキテクチャ

![aws.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/731268/1c1b787f-c95f-0735-02e6-3fd40e4213e2.png)

基盤は以下のコンポーネントで構成されています。

+ RDS: MySQLやPostgreSQLなどのデータベースをホストします
+ Glue: データ変換とデータロードのためのサーバーレス

元記事を表示

ファイルパス・作業ディレクトリのコピペ問題

# ■はじめに

永遠のプログラミング初心者なので、何年もファイルパスの指定でアホの処理の仕方をしている。

### まずPythonでは?

普通にファイルパスをコピペしてくるとこうなる。これで普通に動いてほしい。
“`python
“C:\Users\XXXXX\Desktop\XXXXX\XXXXX.pdf”
“`

しかしpythonはこれでは動いてくれないので、ずっと毎回手動で`\`を`/`に直してきた。
「理由は知らんが、`\`を`/`に直せば動く」という事実だけは経験から学習しているので、毎回手動の力業でどうにかしてきたが、さすがにアホすぎる。

“`python
pdf_document = ‘C:/Users/XXXXXXX/Desktop/xxxx.pdf’
“`

### Rでは?

“`R
setwd(“C:\Users\XXXXX\Desktop\working directory\20220407_作業用”)
getwd()
“`
Rでも`\`では動いてくれない。

“`R
setwd(“C:/Users/XXXXXX/Desktop/wor

元記事を表示

【Python】俺「loggingのloggerモジュールってどこでインスタンス化すればいいんですか?logger_util.pyとかですか?」

俺「loggingのloggerモジュールってどこでインスタンス化すればいいんですか?logger_util.pyとかですか?」

答え:Loggerオブジェクトは、**もうある。**
logging.getLogger()を使ってLoggerオブジェクトを取得する。これにより、新しいLoggerを作成するのではなく、既存のLoggerを取得するか、必要に応じて新しいLoggerを生成する。

>loggingは1つのpython.exeに対して1人のみ存在する

https://zenn.dev/dencyu/articles/2b58f669bcd473

自分のPythonのloggingの認識や使い方が誤っていたので、メモ。

### 正解例

– 宣言の一例(basicConfigを指定して、簡単なフォーマットだけしたい)

“`python
import logging

# Loggingの初期化
logging.basicConfig(
level=logging.INFO,
format=”%(asctime)s – %(leveln

元記事を表示

Discord Botの作り方 超初心者向け #01

# はじめに
※このシリーズは自分がものすごく暇なため記載していくQiitaです。
本記事は#00を読んだことを前提として進めますので
もし読んでない人は一度読んでから来てください
(わかる人はこのまま見てもらってもいいと思います)

# 使用環境 (特に気にしなくていいです)
エディター VisualStudio Code
ランタイム Python 3.12.4

# 今回の目標
メッセージを読み取ってこだまするBotを作る

#イメージ手順
Bot起動

メッセージ受信

内容取得

メッセージ送信

## 手順1 Try
前回VisualStudio CodeとPythonを実行する環境を導入し、
DiscordBotのトークンを取得しました
ここからは簡単にコードの意味を説明しながら書いていきます

VisualStudioを開いて左上のタブ”ファイル”を押して”新しいファイル”をクリック
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3793169/e18857b7-0f

元記事を表示

【生成AI】Amazon Bedrockを使用してJupyterNotebookのコードを解説させてみた

どうもこんにちは。

今回は、Amazon BedrockのAPIを使用して、Jupyter Notebook(SageMakerノートブックインスタンス)のコードを解説させてみました。

# 使用したモデル

新しいClaude3を使用したかったのですが、東京リージョンでは7月から使えるようなので、今回は我慢します。
なので、Claude2.1を使用します。

AWSコンソールの`Amazon Bedrock > モデルアクセス`のページからアクセスをリクエストしておきましょう。

![スクリーンショット 2024-06-26 19.02.55.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2711491/fe6fb47f-5e23-b03b-39e5-3d7e34dfc358.png)

# IAMポリシーについて

今回は、SageMakerノートブックインスタンスからBedrockへアクセスする必要があるので、ノートブックインスタンスに紐づいている`IAMロール > ポリシー`を変更する必要があ

元記事を表示

APIを初めて触ってみた!Pythonを使って湧き水APIを動かしてみる

## はじめに

私は今までAPIを触ったことがありませんでした。
今回は[湧き水API](https://tabi2api.docs.apiary.io/#)を動かしてみたので、その様子を紹介します。

## 開発環境

まず、今回使用した開発環境を紹介します:

– Windows 11 (AMD Ryzen 5 7530U with Radeon Graphics 2.00 GHz)
– Visual Studio Code 1.90.2
– Anaconda(仮想環境 Python3.11)

Pythonを動かす仮想環境として、Anacondaを使用しています。

## 環境構築

APIを使うための準備として、Anacondaを使ってPython3.11の動作する環境を作成します。
以下のステップで簡単に環境を構築できます:

1. Anacondaの仮想環境を確認
“`
conda info -e
“`
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.c

元記事を表示

VSCode上でcv2のautocompleteが中途半端な時はアプデを試してみよう

私用PCのVSCodeで`import cv2`するとautocompleteが効くのに仕事用PCではできない。以下のようになってしまうのだ。

VideoCapture()したかった時の様子
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3719521/e12aa276-ccb4-e63d-d395-3ad74abd2737.png)

imshow()したかった時の様子
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3719521/c9c1694c-fa0e-150e-7318-fd17b1623e16.png)

cvtColor()したかった時の様子
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3719521/4d553092-08f9-9a8e-89ea-7cc394a30e19

元記事を表示

【Python】テスト・モックのやり方とその仕組み

# 概要

Pythonでテストといえば、unittestやpytestが有名ですが、unittestやpytestを使わないやり方、unittestとpytestの違いなどを解説していきたいと思います。まず、テストするにあたり、モックのための前提知識として、再宣言について解説し、次に実際にテストの解説をしていきます。

この記事を読むと以下のことが理解できるようになります。

* [再宣言について](#再宣言)
* [ライブラリを用いないテストの使い方](#ライブラリを使わずにテストする)
* [なぜライブラリが必要なのか?](#モックの問題点)
* [unittestの使い方](#unittest)
* [pytestの使い方](#pytest)

初心者の方やPythonのテストの仕組みについて知りたい方におすすめです。

# 再宣言

PythonではGoやJavaなどの言語とは異なり、再宣言が可能です。

“`python
a = 1
a = 1 # エラーにならない
“`

他の言語では以下のようにコンパイルエラーになります。(以下はGoの例)

“`go:goの場合

元記事を表示

LangChainのTool “DuckDuckGo Search” を拡張

LangChainのTool [“DuckDuckGo Search”](https://python.langchain.com/v0.2/docs/integrations/tools/ddg/)を拡張しました。

# 拡張内容
単純な検索ではなく、以下の5ステップにしています。

1. 検索: DuckDuck Go で検索
1. ページ読込: [`WebBaseLoader`](https://python.langchain.com/v0.2/docs/integrations/document_loaders/web_base/)で検索結果のページ読込
1. Text Split: [RecursiveCharacterTextSplitter](https://api.python.langchain.com/en/latest/character/langchain_text_splitters.character.RecursiveCharacterTextSplitter.html)で読み込んだページを分割
1. Vector Store格納: [Chroma](h

元記事を表示

ディープラーニングのための並列処理を用いた画像の前処理方法

## 本記事について
ディープラーニングで学習させる前に行う画像データの前処理は、
機械学習モデルの精度を向上させるために重要です。

本記事では、縦向きの画像を横向きに回転し、画像を正方形にトリミングし、指定したサイズにリサイズする一連の処理を行うPythonモジュールを紹介します。
また、処理速度を向上させるためにマルチプロセッシングを利用して並列処理を実装します。

## 必要なライブラリ
* pathlib: ファイルパス操作を簡素化
* PIL (Pillow): 画像処理
* shutil: ディレクトリ操作
* time: 処理時間の計測
* multiprocessing: 並列処理

## ソースコード
“`Python
“””縦向きの画像を横向きに回転して、画像を正方形にトリミングして、画像をリサイズするモジュール”””
from pathlib import Path
from PIL import Image, ImageOps
import shutil
import time
from multiprocessing import Pool

def pr

元記事を表示

これであなたもマルチリンガル!?色んな言語であいさつしてみよう

# はじめに
みなさん,言語を学び始めるときにはじめに覚えるものはなんですか?そう!**『あいさつ』** です.これは自然言語に限らず,プログラミング言語でもそうです.どんな言語もまずは`Hello World!`の出力方法から学ぶはずです!!っということで,今回は全何種の言語であいさつをしてみましょう.この記事を読めばあなたもマルチリンガルになっているはずです^^

# 人気言語10選
ここに書かれているランキングですので,自分にとっての好きな言語ランキングなどあれば,コメントに書いておいてください!!

https://codezine.jp/article/detail/19530#:~:text=2024%E5%B9%B4%E4%BA%BA%E6%B0%97%E3%81%AE%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0%E8%A8%80%E8%AA%9E%E3%83%A9%E3%83%B3%E3%82%AD%E3%83%B3%E3%82%B0%E3%81%AF%E3%80%811%E4%BD%8D

元記事を表示

copainterのAIペン入れ機能を妨害するフィルター作ってみた

# はじめに
copainterとはRADIUS5社が提供するイラスト制作に便利なAIツールサービスです。
同社は2024年6月24日にイラストのペイン入れツールの提供を開始しました。

::: note
ここでいうペン入れとは、イラストや漫画のラフスケッチを清書することです。
:::

https://www.copainter.ai/ja

早速眼鏡のお姉さんを描いて、copainterに通してみました。設定は画像の矢印部分に記載しています。

![スクリーンショット 2024-06-26 23.35.34.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2885419/424b47d1-9c92-5507-8650-a41a3c965986.png)

元々のイラストほぼそのままに、余計な線が消えてアニメ風のイラストに変換されました!イラストを急いで書きたい人には便利そうですね。

# なぜAIペン入れ機能を妨害するのか

copainterのAIペン入

元記事を表示

st_javascript

“`python
import json
import pathlib
import datetime
import time

# import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

import streamlit as st
import plotly.graph_objects as go
import plotly.express as px

import streamlit.components.v1 as components
import pyperclip

def main():

# HTMLのボタンとJavaScriptのポップアップを含むコード
html_button_with_popup = “””



Button with Popup