Python関連のことを調べてみた2023年09月15日

Python関連のことを調べてみた2023年09月15日
目次

StreamlitでEDAライブラリを複数つなげてみた

## 要約
業務でEDAを利用するケースが多いのですが、jupyter実行して確認して、というのが煩わしいという声もあったので、ブラウザ上で複数確認できるようStreamlitを利用して作りました。
## 事前準備
必要なライブラリはpandas streamlit sweetviz pyGWalkerです。
pip install pandas streamlit sweetviz pygwalker をしてください。
## ソースコード
“`python
import pandas as pd
import pygwalker as pyg
import streamlit as st
import streamlit.components.v1 as components
import sweetviz as sv
import os
import codecs
import getpass

st.set_page_config(layout=”wide”)

def load_data(uploaded_file):
df = pd.read_csv(uploade

元記事を表示

【技術】Anaconda

# Anaconda

## Anacondaの概要
– 公式サイト:https://www.anaconda.com/
– 公式ドキュメント:https://docs.anaconda.com/free/navigator/?utm_source=navigator&utm_medium=nav-docs

## Anacondaのコンテンツ
– Anaconda アシスタント
– https://anaconda.cloud/code-in-the-cloud?utm_campaign=anacondaassistant&utm_medium=banner&utm_term=website
– Pyscript
– https://pyscript.com/join
– Anaconda Cloud
– https://anaconda.cloud/

## Anaconda Navigatorのコンテンツ
– DataSpell
– JetBrains社のPythonIDE(統合開発環境)

– Anaconda Notebooks

元記事を表示

Python で連番を利用する

連番は急に欲しくなることが知られている。

データの処理、ループの制御、ファイル名の生成といった用途で連続した整数のリストはとても役に立つ。

## range()とリスト内包表記

基本的には range() が手軽で良い。
“`python
# range(N) は 0 オリジンの連番を作る
for i in range(3):
print(f”{i}”)
# 0
# 1
# 2

# range(N,M) は N から M -1 の区間の連番を作る
# range(N,M) の終了は M ではなく M – 1 であることに注意
for i in range(1,13):
print(f”{i}月”)
# 1月
# 2月
# 3月
# 4月
# 5月
# 6月
# 7月
# 8月
# 9月
# 10月
# 11月
# 12月
“`

ただし、 range(N) の返り値は range 型なので list[int] 型がほしいときは list() を使う。
“`python
print(type(list(range(10)))) #

元記事を表示

Open Interpreterのログ解析して、何が行われているのか確認してみた

Open Interpreter、知っていますか?

https://qiita.com/ot12/items/d2672144b914cb6f252f

私はこちらの記事を見て、初めて知りました。
多少OpenAIのAPIを使ったあれこれをしていた経験があったので、この記事を読んだ時に「OpenAIとどのような通信しているんだろう」という疑問が生まれました。

なので、ログを確認して通信の内容を覗いてみようと思います。

# 前提

下記記事を参考にして、「documentsというフォルダを作成して、その中に5つの.docxファイルを作成してください。そして、それぞれに機械学習についての文章を書いて下さい。」
という依頼をOpen Interpreterにしました。
(環境設定やら詳細な手順はこちらを参照)

https://note.com/masayuki_abe/n/n5775edd9d578

実際のソースはこちら。

“`python
import interpreter
import logging
import sys

// ログをdebugに設定
logging.

元記事を表示

pydantic.errors.PydanticUserError: If you use `@root_validator` with pre=False (the default) you MUST specify `skip_on_failure=True`. Note that `@root_validator` is deprecated and should be replaced with `@model_validator`.

# mlflowが動かなくなった。
“`
mlflow ui
“`
を実行すれば、mlflowが実行できるはずだが、以下のようなエラーがでてきた。
“`
Traceback (most recent call last):
File “/usr/local/bin/mlflow”, line 5, in
from mlflow.cli import cli
File “/usr/local/lib/python3.10/dist-packages/mlflow/cli.py”, line 683, in
import mlflow.gateway.cli
File “/usr/local/lib/python3.10/dist-packages/mlflow/gateway/__init__.py”, line 1, in
from mlflow.gateway.fluent import get_route, search_routes, query, create_route, dele

元記事を表示

paizaというプログラミング学習サービスがサービス利用停止になった話

:::note alert
こんなことを書いてしまうと自分のイメージダウンになってしまうことを承知で記載しています
あくまでも好きなサービスの1利用者としての意見になります
:::

## Paizaとは

ITエンジニア向け総合求職・学習プラットフォームになります。
プログラミングの学習だったり、求職ができる国内サービスです。

https://paiza.jp/

こちらのサービスの売りとしては、プログラミングスキルチェックにより、 スキルレベルを6段階で評価します。
問題がS~Dランクに分かれており、ランクアップのためのチャレンジは各問題で一度のみになります。

ランクが高ければ企業からのスカウトが届きやすくなり、実力がある人ほど転職活動が有利になります。

## 経緯
2020年ごろからPaizaを使用してプログラミングの学習を行っており、スキルチェック問題や言語の学習サービスを利用していました。

半年ほど有料会員として登録したこともあるほど、好きなサービスです。

そして、2021年にはPaizaを利用して憧れのエンジニアになることができました!
具体的にはBランクを取

元記事を表示

【2023年9月】0円で読めるPythonの技術書5選

# はじめに
みなさん、こんにちは。高校生エンジニアの[Raio](https://twitter.com/Raio14f)です!
平日は公立高校に通いながら、放課後や休日はIT企業のエンジニアとして働いています??‍?

↓筆者について↓

https://qiita.com/Raio14f/items/ef0fb67685b36298bcb0

今回の記事では、0円で読めるPythonの技術書5選を紹介します!
無料で読む方法も紹介してるので、是非最後まで見て頂けると幸いです??

# 技術書を無料で読む方法
KindleUnlimitedを使うことで、**沢山の技術書を無料で何冊でも読むことが可能です**?

– 200万冊以上の書籍が何冊でも読み放題
– 月額980円が今なら1ヶ月無料
– 場所に囚われず、様々な端末で使用可能

勿論、技術書以外にもビジネス書や漫画など種類豊富です!

今回の記事で紹介する技術書も、KindleUnlimitedで読むことができるので是非?

**↓入会したい方は画像をクリック↓**
[![画像タイトル](https://qiita-image

元記事を表示

PythonによるExcelワークシートとXMLの相互変換

XML(Extensible Markup Language)は超文書マークアップ言語であり、ファイル形式でもあります。XMLは、カスタムタグを設定でき、拡張性があり、読み書きしやすく、転送が容易などの特長があり、アプリケーション間のデータ交換の最も一般的なツールになっています。XML形式は、転送が容易で、開発者が表を操作しやすく、一般ユーザーに届ける際には、xlsやxlsxなどの形式で表示する必要があるため、ユーザーが読み書きしやすいです。本稿では、**XMLファイルとExcelスプレッドシートの相互変換**の方法について説明します。

本稿で紹介する方法では、[Spire.XLS for Python](https://www.e-iceblue.com/Introduce/xls-for-python.html)が必要であり、[公式ウェブサイトからダウンロードする](https://www.e-iceblue.com/Download/Spire-XLS-Python.html)か、pipでインストール(Dispatch 1.7.4も同時にインストール)することができます:

元記事を表示

【技術】schikit-learn

# schikit-learn

# APIリファレンス
## sklearn.base: Base classes and utility functions
## sklearn.calibration: Probability Calibration
## sklearn.cluster: Clustering
## sklearn.compose: Composite Estimators
## sklearn.covariance: Covariance Estimators
## sklearn.cross_decomposition: Cross decomposition
## sklearn.datasets: Datasets
## sklearn.decomposition: Matrix Decomposition
## sklearn.discriminant_analysis: Discriminant Analysis
## sklearn.dummy: Dummy estimators
## sklearn.ensemble: Ensemble Meth

元記事を表示

PythonでWord文書を画像に変換する

Word文書は、テキスト、画像、表などのコンテンツを編集するための機能豊富なフォーマットです。しかし、Word文書は表示に不便であり、表示デバイスやシステムに一定の要件があります。表示問題を解決するための一般的な方法は、Word文書を画像形式に変換して、文書の内容とレイアウトを保持し、異なるプラットフォームやデバイスでの一貫性のある表示を確保し、表示環境要件を低減することです。本文では、**Word文書を画像ファイルに変換**して表示および共有する方法について説明します。 本文で使用される方法には[Spire.Doc for Python](https://www.e-iceblue.com/Introduce/doc-for-python.html)が必要です。

Spire.Doc for Pythonライブラリは[公式サイト](https://www.e-iceblue.com/Download/Spire-Doc-Python.html)からダウンロードするか、pipでインストールできます。
“`
pip install Spire.Doc
“`

## Word文書の各ペ

元記事を表示

【GAS】気象庁の予報がどう変わっていくかをモニタリングしてみた

# 概要
普段私たちは天気予報を頼りに、予定や服装を決めたりしますが

**「1週間先の天気予報って実際当たってるの?」**
**「予報コロコロ変わってない?」**

と、私はふと疑問に思いました。

しかし、過去の予報履歴なるものは通常公開されません。
このため、予報がどれくらい当たっているかを確認するのが難しいです。

そこで僕は、Google Apps Script(GAS)を利用して、気象庁の天気予報を定期的に取得して保存するプログラムを組み、天気予報の移り変わりをモニタリングすることを考えました。

本記事はその方法を解説します。

# 大まかな流れ
1. 気象庁の天気予報をJSONで取得する(GAS)
1. 取得したJSON内の情報をスプレッドシートに書き込む(GAS)
1. スプレッドシートから値を取得し、モニタリング結果を可視化する(Python)

# ① GASプロジェクトの作成
自分のGoogle driveの任意の場所を開いて、左タブの「新規」をクリック。
![image.png](https://qiita-image-store.s3.ap-northea

元記事を表示

nerfstudioでAttributeError: module ‘PIL.Image’ has no attribute ‘ANTIALIAS’ エラーの対処法メモ

## エラー
[nerfstudio](https://github.com/nerfstudio-project/nerfstudio/tree/main)のDockerfileで環境を作ってからns-process-dataコマンドでcolmapを使おうとしたらエラーが出た

~~~
AttributeError: module ‘PIL.Image’ has no attribute ‘ANTIALIAS
~~~

## 対処法
Pillow 10.0.0以降ではImage.ANTIALIASが削除されているため、9.5.0にダウングレードする

– Dockerfileに以下の行を追加
~~~
RUN pip install Pillow==9.5.0
~~~
または
– ターミナルで以下を実行
~~~
pip install –force-reinstall -v “Pillow==9.5.0”
~~~


参考記事
– https://github.com/nerfstudio-project/nerfstudio/issues/2378
– https://s

元記事を表示

【Flask】賞味期限管理アプリを作成したので、学習をまとめる

Flaskの学習のために、購入した食材の賞味(消費)期限を管理するアプリを作成しました。
https://koichi73.pythonanywhere.com/how-to-use/

備忘録として、学習や記事をまとめます。

※コードの一部をGithubにて公開しています。

https://github.com/Koichi73/Expiration-Date-Management

## 入門
基本的な使い方は、以下などの記事を参考。

https://qiita.com/Bashi50/items/30065e8f54f7e8038323

## HTMLファイルの共通化
extendsを使う。パーツ化はinclude。

https://blog.imind.jp/entry/2020/02/01/174702

## ファイルの分割
コードの保守性を上げるために、機能ごとにファイルを分けたい。

#### (1)pythonファイル
Blueprintを用いて分割する。
app.pyなどに、Blueprintの設定を集約するイメージ。

#### (2)データベース
以下

元記事を表示

Slack API 作成と python でSlack SDKを利用してチャンネルにメッセージを投稿

# Slack Bot 作成
① Slack API のアプリケーション管理ページにアクセスします。
https://api.slack.com/apps

② 「Create an App」ボタンをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592268/668137cd-342d-f22a-20aa-190ba19ee394.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/592268/cd93ec5b-b089-dc4b-2cfc-b79cf204149e.png)

③「App Name」に任意のアプリ名を入力し、「Development Slack Workspace」で対象となるワークスペースを選択して、「Create App」ボタンをクリックします。

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

元記事を表示

WindowsでPythonを使う

## Pythonをダウンロード

`Download Python 3.11.5`を押下。
https://www.python.org/downloads/

## Pythonをインストール

### ファイル実行

`python-3.11.5-amd64.exe`を実行。

### インストール実行

`Use admin privileges when installing py.exe`にチェックあり
`Add python.exe to Path`にチェックなし
のまま`Install Now`を押下。

### デバイス変更確認

`はい`を押下。

### インストール完了

`Close`を押下。

### コマンド実行

`python`ではなく`py`を用いる。

“`python
py -V
“`

## venv

“`zsh
python3 -m venv venv; source venv/bin/activate;
“`

ではなく

“`powershell
py -m venv venv; venv/Scripts/activate;

元記事を表示

ベクトルの垂直「2023 福島大学前期 食農学類【3】」をsympyとFreeCADでやってみたい。

・FreeCADで、図を多く取り入れわかりやすく? できませんでした。
 作図も下手で申し訳ありません。
 datum planeでできませんでした。 planeでしました。
 planeの隅の4点の座標計算を探しています。

**・2平面の交差?直線の方程式です。
・内積の垂直条件について、
 ??? 零ベクトル(非ゼロベクトル)が、0個か,1個か,2個か,わかりませんでした。???**

オリジナル

https://kamelink.com/blog/2023/08/31/9-1-23-hukusimadai-syokunou-3

上と同じです。大学入試数学問題集成 様>テキスト 食農学類【3】

https://mathexamtest.web.fc2.com/2023/202310141/2023101410100mj.html#top-0117

# 内積の垂直条件
??? 零ベクトル(非ゼロベクトル)が、0個か,1個か,2個か,わかりませんでした。???

https://qiita.com/mrrclb48z/items/9642ba4caebf5d9c9e72#c

元記事を表示

ReplitでTesseractを導入する、discord.pyに実装する【2023年】

# 初めに

ReplitというオンラインIDEでdiscord.pyを使用してbotを作成していました。Tesseractを使いたくなり、導入しようとしましたが、Replitではsudoを実行する権限がないため、~~一般的な方法では導入することができませんでした。~~

追記:記事を書いている途中で検証していたら普通にできました…悲しい
もしこっちが出来なかったら是非一番下にある方法を試してみてください。

“`bash:bash
pip install tesseract
pip install pytesseract
“`
終わったら、バージョンを確認して成功しているか確かめます。
“`bash:bash
tesseract –version
“`
このとき、選択肢が2つ出てきますが上の方のtesseract.outを選択してエンターキーを押します。

また、ほかの記事にあった日本語データ置き換えはSHA256で確かめたところ標準のものと同じだったので必要なさそうです。

# pythonの書き方
せめてこの項だけでも見ていってください…

“`python

元記事を表示

[Local Port Forwarding]ローカルで動かしてるサービスを他の人にもみてほしい[VSCode]

# はじめに
VSCodeの1.82が出たので[リリースノート](https://code.visualstudio.com/updates/v1_82#_workbench)見てみた。
すると以下の1文を見つけた。

– Built-in port forwarding – Forward local server ports from within VS Code.

ローカルで実行しているサーバーのポートを転送しまっせ

ナニコレベンリソウ

# 詳しくみてみた

Local Port Forwardingの詳しいことは[ここ](https://code.visualstudio.com/docs/editor/port-forwarding)に詳しく書いていた

ざっくりまとめると

– 拡張機能不要でローカルで実行中のサービスへの転送アドレス作ってくれる
– アクセスするにはアドレス作成者と一緒のGitHubアカウントにサインインする必要がある
– ただ設定をパブリックにすればアドレス知ってる人なら誰でもアクセスできる
– 現状リモートマシンには対応してないけど対応する予定

元記事を表示

Python: 2023東京大学・文科・第3問(シミュレータ)

# 2023東京大学・文科・第3問(シミュレータ)

Python を用いて上記のシミュレータをできるだけ単純に作成してみた。この問題については ↓

黒玉3個、赤玉4個、白玉5個が入っている袋から玉を1個ずつ取り出し、取り出した玉を順に1列に12個並べる。
ただし、袋から個々の玉が取り出される確率は等しいものとする。

(1) どの赤玉も隣り合わない確率 p を求めよ。
(2) どの赤玉も隣り合わないとき、どの黒玉も隣り合わない条件付確率 q を求めよ。

## 実装

玉を文字と見立ててシャッフルと `’rr’` が含まれるか、 `’bb’` が含まれるかを判定。(1) は `’rr’` が含まれる割合を計算すればよいので平均を取り、(2) は `’rr’` と `’bb’` 両方含まれる確率を計算し (1) の答えで割ればよい…はず

“`python
import numpy as np
import random

class Sim(object):
“””2023東京大学・文科・第3問 シミュレーター
黒玉3個、赤玉4個

元記事を表示

n週連続推薦システム系論文読んだシリーズ24週目: Text Is All You Need! 汎用的なテキスト情報を使ってID-freeでtransferableなsequential推薦モデルを提案する論文を読んだ

# Text Is All You Need: Learning Language Representations for Sequential Recommendation

published date: 26 May 2023,
authors: Jiacheng Li, Ming Wang, Jin Li, Jinmiao Fu, Xin Shen, Jingbo Shang, Julian McAuley
url(paper): https://arxiv.org/abs/2305.13731
(勉強会発表者: morinota)

## どんなもの?

– KDD’23に採択されたAmazonの論文。読んだモチベーションは、twitterで流れきた事とタイトルに惹かれた事。
– ID-Freeでコールドスタートアイテムに強く、かつcross-domainに適用可能なsequential推薦モデル Recformer の提案を目的とした論文。
– Recformerの重要な特徴は、ID-freeでアイテムをテキストとして扱う点と、言語表現(i.e. 単語の埋め込みベ

元記事を表示

OTHERカテゴリの最新記事