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

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

PythonでPDF内のテキストを検索し、テキストを強調表示する方法

PDF文書の読書効率を高めるには、重要なテキストを強調するために鮮やかな色を使用することがよくあります。この一般的に採用されている方法は、特に長いPDFにおいて、読者がナビゲートしたり内容を強調したりするのを助けます。文書作成者はPythonプログラムを活用することで、ハイライト処理を簡単かつ迅速に実行することができます。この記事では、Pythonプログラムを使用して**PDF文書内のテキストを検索し、テキストを強調する方法**を説明します。

– **[PDF内のテキストの検索とハイライト](#pdf内のテキストの検索とハイライト)
– **[PDFページ上の特定領域のテキストを検索・ハイライト](#pdfページ上の特定領域のテキストを検索・ハイライト)**
– **[正規表現によるPDF内のテキストの検索とハイライト](#正規表現によるpdf内のテキストの検索とハイライト)**

この記事の方法は[Python用のSpire.PDF](https://www.e-iceblue.com/Introduce/pdf-for-python.html)を必要とします。これはWebサイトま

元記事を表示

忙しい人のための3分クッキング【StableDiffusionのImg2Imgで桜を紅葉に変換してみた】

## はじめに
自分は24卒でWeb系の事業会社にフロントエンジニアとして入社する予定の大学生です。

普段ではReact×TypeScriptを利用したフロント周りの開発をメインで行なっています。現在は、内定者アルバイトでSREに入門しています。

今回は、AIによる画像生成ツールであるStableDiffusion-v1-5 img2img modelを使用して、既存の画像を新しい画像に変換するするための方法について紹介します。

## 忙しい人向け
解説なんていらないので、とりあえず画像変換がしたいという方は[ここをクリック](#プログラム全体)してください。
[※input画像をcolab上に配置する必要があります。](#前提)

## StableDiffusionについて

Stable Diffusionは「入力されたテキスト」をもとに画像を生成する「訓練済のAIモデル(Diffusion Model)」を搭載した画像生成AIで、作成したい画像のイメージ(例えば、車を運転する猫、サングラスをかけた猫、など)を英単語で区切って入力することで、様々な画像を作成できます。

元記事を表示

気持ち悪いコード

# はじめに
自分のミスで生み出した気持ち悪いコードが正常に動作していたので、エラーにならない理由を調べてみました。

## 気持ち悪いコード

“`Python: 書きたかったコード
print(“Hello, world”)
“`

“`Python: 書き間違えたコード
print (“Hello, world”)
“`

`print`と`(“Hello, world”)`の間に空白があります。
書き間違えたコードはエラーになると思っていたのですが、どちらも`Hello World`が出力されました。

なぜエラーにならないのでしょうか。

## もっと気持ち悪いコード
もっと極端に出来ないか試してみました。
“`Python: 通常のコード
def func():
print(1+110)

func()
“`

“`Python: 気持ち悪いけど動くコード
def func ( ) :
print ( 1+

元記事を表示

macでPythonを起動しようとするとコマンドラインツールのインストール要求が繰り返し表示される件の解消

macでPythonを起動しようとすると、以下のエラーが発生した。 コマンドラインツールをインストールしても、再度表示される。

“`sh
% python
xcode-select: Failed to locate ‘python’, requesting installation of command line developer tools.
“`

## 修正方法

コマンドラインツールの`python`コマンドとして、`python3`のシンボリックリンクを置くと直る。

“`
sudo ln -s /Library/Developer/CommandLineTools/usr/bin/python3 /Library/Developer/CommandLineTools/usr/bin/python
“`

この修正方法は以下でコメントされていた。他にも方法があるようだが、私の環境では上記で修正された。

https://developer.apple.com/forums/thread/704099

以上

元記事を表示

DeepL APIを使ってpythonに翻訳機能を埋め込む

## はじめに
この記事は、[DeepL Python Library](https://github.com/DeepLcom/deepl-python)を使って自作のpythonパッケージに翻訳機能を加える方法です。個人開発で得た知識を、いつでも見返せるように保存する目的で使用しているため、言葉足らずである箇所が多々あるかと思います。気付いた箇所がありましたら、ご一報いただけると幸いです。

## 作者の環境
作者は以下の環境を使用しています。そのほかの環境では試験してないので、動作の保証はありません。Ubuntu 22.04を使用する場合は、既知のエラーが発生しているようです[bug report](https://bugs.launchpad.net/ubuntu/+source/poetry/+bug/1958227)。

OS MacOS 13.0
Python 3.9.6

上記Gith

元記事を表示

Continueサーバーをポートを指定して起動する

https://marketplace.visualstudio.com/items?itemName=Continue.continue

[Continue](https://continue.dev/)はVS Codeの拡張で、多様なLLMと連携する機能を提供しています。
ユーザーはコードをハイライトし、自然言語でLLMに質問をしたり、コードの編集を指示したりできます。外部サービスからコードをコピペする手間が省け、開発環境内で直接LLMを操作できるようになります。

要するに、GitHub Copilotと似たような機能を持っていますが、ContinueはOpenAI APIを用いることが特徴です。[llama.cpp](https://github.com/ggerganov/llama.cpp)などを利用して、OpenAI APIと互換性のあるサーバーをローカルに構築し、それと連携することが可能です(もちろん、オリジナルのOpenAI GPT-4/GPT-3も使用可能です)。

## Continueを試したい!→動かなかった

外部サービスに頼らずにAIを活用したプログラミ

元記事を表示

ChatGPTとPythonで学ぶ ローカル線形埋め込み (LLE)

皆さんこんにちは。今日も引き続きChatGPT先生をお迎えして、「ChatGPTとPythonで学ぶ ローカル線形埋め込み」というテーマで雑談したいと思います。それではChatGPT先生、よろしくお願いします。

### **assistant**:

はじめまして、ChatGPT先生と申します。本日は「ローカル線形埋め込み(Local Linear Embedding:LLE)」についてご説明します。

LLEは、多次元データを低次元データに変換する手法の1つで、主に機械学習の分野にて活用されています。特に、高次元データの視覚化や、データの事前処理として利用されることが多いです。

LLEの特徴的な点は、とにかく「近所」に注目することです。この「ローカル」な視点が、データの局所的な構造を保ちつつの低次元埋め込みを可能にしています。

それでは、具体的な手法について説明します。

まず、元の高次元空間の各データポイントについて最も近いk個の近傍点を見つけます。
次に、各データポイントがその近傍点を線形に再現する重みを計算します(ローカル線形再構成)。
そして、この重みを保

元記事を表示

統計検定学習備忘録 ⑤統計検定1級2022数理統計 大問3(1)(2)別解・別解説 ポアソン分布・ガウス分布に関する計算

普段より、自分のプログラミング等に関する質問に答えて下さっている皆様ありがとうございます。m( _ _)m よろしければ統計検定の学習等にご利用ください。

問題文URL(統計数理 大問3(P8)を参照して下さい)

chrome-extension://efaidnbmnnnibpcajpcglclefindmkaj/https://static.toukei-kentei.jp/wp-content/uploads/20230112122939/202211grade1suri-20230112122939-20230112122939.pdf

大問3 (1)Poisson distribution(ポアソン分布)の平均・分散を定義に従ってゴリ押しで計算

下準備①:離散型確率密度関数に関する知識

https://drive.google.com/drive/u/0/folders/1k792Jv2EuZJ0tLUp5WV8HbMTDgcXC5rB

下準備②:Taylor級数展開に関する知識等

https://drive.google.com

元記事を表示

pythonを利用した、qiitaApiで記事一覧の取得方法(windows)

laravelの事を聴いたら大体の事を答えてくれる
larvel先生のAiを作りたくなったので、
強化学習用のデータセットを作る為にqiitaを利用させて貰う。

https://qiita.com/koki_develop/items/57f86a1abc332ed2185d

https://qiita.com/nishikyon/items/bf27c4e6ce7170931ec3

こちらの記事を参考にさせていただきました。
ありがとうございます。

## Apiのアクセストークンを作る

[アクセストークンの発行ページ](https://qiita.com/settings/tokens/new)に移動する
記事一覧を取得したいだけなので、

* アクセストークンの説明
* スコープをread_qiita

にして、
「発行する」ボタンをクリックする

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1681950/42d9fa20-24b9-8659-5079-f973da9

元記事を表示

真のよわよわPython学習備忘録① コードエラー等もなさげなのに、Python3で作ったモジュール(拡張子が.pyのPythonファイル)がなんか開かない(≒起動しない)んですが・・(´д`) 

 昨年度前職で体調を崩したことをきっかけに、紆余曲折を経てなんやかんや、プログラミングを学び始め、数学がそこそこ得意だったこともあって(?)とりあえず、半年強は学習を継続できている、とある真のよわよわ、駆け出しエンジニア(できればデータサイエンティスト)になりたい32歳の今だに少年ジャンプ・マガジンを読んでるおっさんです。以下間違いあれば遠慮なくご指摘下さい m ( _ _ )m

(※普段お世話になっている某コミ二ティの人には本当に感謝m( _ _ )m)
____
 Qiitaの存在を知った最初は聞いた?何それ?美味しいの(´。`)。。。って感じでした。ちなみに執筆現在(2023.11.22)もQiitaを使いこなせておらず、質問機能とかまだよく分かりません。Poetry(Pythonのパッケージ管理システム)もなんか格闘して入ったけど、まだ全然使いこなせてないです。(-_-;)

 プログラミングスクール等でPHP、LaravelをメインにHTML&CSS、Javascript、MySQL、Github等それなりに理解でき(?)、基本的なものなら、LaravelでのCR

元記事を表示

Pandas:インデックス無しでCSVファイルを出力する方法

皆様こんにちは。
今回はPython学習の一環として、Pandasのデータフレームを用いてCSVファイルを操作してみます。
また、インデックス無しでCSVファイルを出力する方法をご紹介します。

::: note
Pandasとは?
Pythonのライブラリの一つ。データ解析機能を提供する。
:::

# 普通に出力してみる
では実際に出力してみます。
今回は環境として、「Google Colaboratory」を使用します。
Google Colaboratory(以下Colab)の使い方については[こちら](https://blog.kikagaku.co.jp/google-colab-howto#Google_Colab-3 “【Colab 入門】Google Colaboratory とは?使い方・メリットを徹底解説!”)をご覧ください。
まず、下記のようなCSVファイルを用意します。
今回は仮としてクラス名簿を想定したファイルとします。

クラス名簿.csv
![クラス名簿CSV.png](https://qiita-image-store.s3.ap-northeast-

元記事を表示

WindowsにTensorflow2をpoetryでインストールで少しはまる

[Tensorflow-io-gcs-filesystem with Windows – General Discussion – TensorFlow Forum](https://discuss.tensorflow.org/t/tensorflow-io-gcs-filesystem-with-windows/18849/6)

上記にある通り、2023/11月現在、依存性のあるtensorflow-io-gcs-filesystemが、0.31.0しかwindowsに適応していない。

“`jsx
> poetry add tensorflow
Using version ^2.15.0 for tensorflow

Updating dependencies
Resolving dependencies… (1.2s)

Package operations: 3 installs, 0 updates, 0 removals

• Installing keras (2.15.0)
• Installing tensorflow-io-gcs-file

元記事を表示

Numbaを使って二次元のQDAを高速に解いた話

# Numbaを使って二次元のQDAを高速に解いた話
訳あって説明変数を2個選んできて、2次元にプロットして、綺麗にまとまっているかを調べる必要ができた。
ただ、その説明変数の種類が20万もあるため、その中から2個選ぶ選び方が
$${}_{200000} C_2 =19999900000$$
今回はこれを解くにあたって、QDA(二次判別)をNumbaで実装し、現実的な時間で計算できるようにしたので、自分のメモ兼ちょっとくらいはおんなじことをしようとしている人の役に立つかもと思い、書き残しておく。
なお環境は、M1macbookair,16Gbメモリ,
python=3.10.13 , numba=0.57.1 , numpy=1.24.4
なお、これを書いているのはpythonに触れて1年くらいの初学者で、大学で使うから頑張って書いたものです。
自分の環境では動いたので、まあそれでいいので他の人が動くかはわかりません。一例としてみてみてください。
また、質問があればぜひ、コメントにて。答えるかわからないし、答えられるのかもわかりません。

## QDA(二次判別)
https:

元記事を表示

日本語検出のPythonライブラリのテスト

ベクトル埋め込みに使われるmultilingual-e5の日本語トークンを調べてみようと思いましたが、その前にまず日本語かの判別が必要なのでそのPythonライブラリを色々試してみました。

結論としては日本語ではlangidとfasttextが微妙で、cld2も短い語が消えてて、langdetectが一番マシそうな感じでした。以下は検証コードとその結果です。
“`python:
from transformers import AutoTokenizer # pip install transformers
tokenizer = AutoTokenizer.from_pretrained(‘intfloat/multilingual-e5-base’)

import langid # pip install langid
tokens = list(tokenizer.get_vocab().keys())
japanese_tokens = [token for token in tokens if langid.classify(token)[0] == ‘ja’]
pri

元記事を表示

tkinterを触り始めて躓いたこと

## はじめに
ファイル共有型のDBの構築とともに万人がDBに情報を登録,照会できるようにとtkinterを使って簡易的なアプリケーションを作り始めました.
作成過程で躓いた内容を掲載します.備忘録です.

## 動作環境情報
– Python 3.11.5
– tkinter 8.6.12

## エラー事象
### ①Entryオブジェクトが取得できない.
入力ボックス(Entryヴィジェット)に入力された値を取得したかった.
-> 変数にtk.Entryを指定したと思っていたら,.placeで位置指定していました.痛恨のミス…!! .packなどでも同様のことが起きます.

【解決策】
Entryオブジェクトの設定と位置設定のコマンドを分けて記述する.
“`python
# 修正前
import tkinter as tk

root = tk.Tk()
entry1 = tk.Entry(root,
width = 20
).place(x=50, y=50)
“`

元記事を表示

色空間上のL1距離を可視化する

matplotlibで色空間上のL1距離を可視化してプロットする

## 関数
L1距離をプロットする関数
“`python
def plot_L1(original, input_data, plot_color):
plt.plot([original[0], input_data[0]], [original[1], original[1]], [original[2] , original[2]], c=plot_color,ls=”:”)
plt.plot([input_data[0], input_data[0]], [original[1], input_data[1]], [original[2] , original[2]], c=plot_color,ls=”:”)
plt.plot([input_data[0], input_data[0]], [input_data[1], input_data[1]], [original[2] , input_data[2]], c=plot_color,ls=”:”)
“`
カラーコードを作成する関数
`

元記事を表示

Matplotlibで、L1距離の可視化

散布図を作成した時に、L1距離をプロットする方法がなかったので自作した

“`python
import numpy as np
import matplotlib.pyplot as plt

x_hoge = np.arange(10)
y_hoge = np.arange(10)

plt.scatter(x_hoge, y_hoge)

#plt.plot([x_start,x_end],[y_start,y_end])
for i in range(x_hoge.shape[0] – 1):
plt.plot([x_hoge[i], x_hoge[i + 1]], [y_hoge[i], y_hoge[i]], c=”red”)

for i in range(y_hoge.shape[0] – 1):
plt.plot([x_hoge[i + 1], x_hoge[i + 1]], [y_hoge[i], y_hoge[i + 1]],c=”blue”)
“`

### 出力画像
![ダウンロード (52).png](https://qiita-image-st

元記事を表示

OpenAI の各モデルを使って音声でチャットしてみる

# やりたいこと
OpenAI が提供しているモデルに、新しく Text to Speech のモデル (tts-1, tts-1-hd) が追加されました。Input にテキストを入力するとそのテキストを自然なイントネーションで読み上げてくれるものです。
元々あった Speech to Text のモデルである whisper-1 と組み合わせることで GPT のモデルと音声で対話できるなーということでやってみた内容をまとめてみます。

# 環境
* Windows11 Pro
* WSL2 (Ubuntu22.04)
* Python 3.10.12
* 音声入力のためのマイクが必要です
* 音声出力のためのスピーカーが必要です

:::note warn
OpenAI が提供する API を使うためにはあらかじめクレジットを追加しておく必要があります。無料枠が残っている場合は、その範囲内で利用できます。
:::

# 構成
分かりきっているが構成は以下のような形。「」は音声、”” はテキスト。

![image.png](https://qiita-image-store

元記事を表示

プログラミングを始めた際に知っておきたかったPythonの基本

ChatGPTがあるから誰でもプログラムを書けるみたいに言われますが、実際のところ、基礎知識がないと効率も悪く、複雑なものは作れないので、
私がプログラムを読めるようになり、アプリをリリースできるようにまでなったきっかけのpythonの基礎を記載します。

基本的にChatGPTが書いてくれるので、概念を理解して、コードを読んで修正出来たら大丈夫です。
この記事もほぼChatGPTが書いてます。

# 1. Pythonにおける重要な概念
まず、Pythonにおける重要な概念を整理して説明します。

### 1. モジュール (Modules)
– **概念**: モジュールは、関数、クラス、変数などを含むPythonのファイルです。これにより、コードを再利用しやすくなり、プログラムを整理して管理しやすくなります。
– **使用方法**: `import`文を使用してモジュールをインポートします。例えば、`import math`は`math`モジュールをインポートします。

### 2. 変数 (Variables)
– **概念**: 変数はデータを格納するための名前付きの場所です

元記事を表示

enkanetwork.pyの使い方まとめ

# はじめに
はじめまして。
PythonでEnkanetworkAPIを利用する際に、requestsで持ってくる記事はQiitaや他サイトなどに色々ありますが、enkanetwork.pyをインポートして利用する方法を書いている記事が見当たらなかったので書いていこうと思います。
# Enkanetworkとは?

https://enka.network/

Enkanetworkとは、ざっくり申しますと原神内のプロフィールデータを持って来てくれるAPIです。

取得できる情報を具体的に言うと、フレンドの画面を開いて見る事が出来る情報を大体すべて取得できます。8枠あるキャラクターの欄だったりアチーブ数だったり、キャラクター詳細を非表示にしていなければ聖遺物や武器なんかも参照する事が出来ます。

今X(旧Twitter)などでよく見かける原神のキャラクターのビルドカードは全てこのAPIが絡んでいると考えてもらってOKです。日本だと[Artifacter](https://twitter.com/ArtifacterBot)さんのデザインが一番有名だと思います。

なお、APIはJSや

元記事を表示

OTHERカテゴリの最新記事