Python3関連のことを調べてみた2022年10月15日

Python3関連のことを調べてみた2022年10月15日

(Python3)とあるDBにおける文章分類を学習したモデルの作成を行い、別のDBの文書分類に使おう、という機械学習のプロジェクト

# はじめに
久々に機械学習ネタ。とある文章の集まったDBにおける分類を学習したモデルの作成を行い、別のDBの文書分類に使おう、というプロジェクト。詳細は伏せるが、概略は次の通り。

学習対象のDBには、それぞれの文書の情報が、分類の種類、文章(生データ)、文章から抽出した特徴語のリストが登録されている。ちなみに全部英文。英語フレーズ。特徴語の抽出は、とあるアルゴリズムでDB内全文書に共通したものが適用されている。

文章(生データ)と分類種類の関係を学習してもいいかもしれないが、それは分類の特徴を得ない自然な言葉、単語が多く含まれてしまって分類に関係ない情報を省くなどの無駄な処理が入ってしまい、学習にも時間がかかるのではないか、と考え、特徴語(フレーズ)と分類の種類を学習してみることにした。

# 目的
特徴語と文書分類の関係を機械学習した判別分析モデルを構築する。その応用として、別のDBの文書の自動分類システムとして組み入れる。

# 方法
## 環境
Windows11 (insider preview) WSL2 ← ”WSL2でCuda”にチャレンジします。
Xeon E5-

元記事を表示

初投稿

# Python難しい
頑張りたい

元記事を表示

Python 3 エンジニア認定データ分析試験【合格体験記】

# 自己紹介:Back Ground
・職業:データアナリスト
・学歴:大卒/大学院はM2のときに中退(10年前)
・最近はIoT, スマート農業関連に力を入れています
・その他資格:臨床工学技士、甲種危険物取扱者など

# Python3 エンジニア認定データ分析試験とは?
一般社団法人Pythonエンジニア育成推進協会が行っている民間資格になります([詳細](https://www.pythonic-exam.com/exam/analyist))

# 試験を受けようと思った理由
・分析でPythonを使っているので力試し。
・基礎がしっかり身についているかを確かめるため。
~~・資格を取ると会社から褒賞金が貰える。~~

# 試験後感のレベル
Pythonで分析関連の仕事をしていれば、基礎中の基礎が問われる問題ばかりで、[Prime Study](https://study.prime-strategy.co.jp/)の模擬試験を研究しまくっていたせいか、本番の試験は拍子抜けするほど簡単でした。
(中には「簡単に解かせないゾ」的な問題はありましたが)
制限時間60分40問の

元記事を表示

pythonで変数が存在するか確かめる

## 概要
python で変数が定義されていないとエラーが発生するかと思います。
エラーを防ぐ方法に例外処理である`try except`があると思いますがその方法以外で
変数が定義されていないことを確かめたいと思います。

## 内容
まずはよくあるエラーから
“`py
function1=3.1415
print(function2)

# => NameError: name ‘function2’ is not defined
“`
もちろんfunction2は定義されていないのでエラーを発生します。
例外処理である`try except`を用いると
“`py
try:
function1=3.1415
print(function2)
except:
print(“err”)

# => err
“`
これ以外の方法に`local`関数を使用する方法があります。

“`py
function1=3.1415
if ‘function1’ in locals():
print(‘exist’)
else:
print(‘not

元記事を表示

複数条件のin演算子の内包表記

## 概要
こんにちはkentoです。初投稿です。

python の if文を使ってリスト(配列)の中に特定の要素が存在するか、存在しないかを判別するときに
複数の要素で分類したいときに用いる内包表記はどのようにしたらと試行錯誤した結果、このようにすれば分類できました。

## 内容

if文の中で複数条件を用いる中で
`or`や`and`を使用するかと思います。
そのほかにもpythonには
`any`や`all`などの関数もあります。

例えば
“`py
sample = [‘Humidity’]
print(‘temperature’ in sample or ‘Humidity’ in sample or’carbon dioxide’ in sample or ‘Atmospheric pressure’ in sample)
print(any([‘temperature’ in sample,’Humidity’ in sample,’carbon dioxide’ in sample,’Atmospheric pressure’ in sample]))

元記事を表示

アルゴリズム実技検定(PAST)について 並びに 第11回A〜C問題 Python解答例

[Supership](https://supership.jp/) VPoEの名畑です。

昨年末に[採用活動のために競技プログラミング(AtCoder)を始めて一年経ったので感想を書きます](https://qiita.com/nabata/items/44fa3995e476b12b9860)という記事を書きました。

それをAtCoderの社長である高橋様に褒めていただけたのは2021年の私的良かったことニュース上位です。本当にありがとうございます。

サイコロをpythonで作ろう!(python初心者向けシリーズ①)

python初心者向けシリーズ①
|サイコロを作ってみよう|
ーーーーーーーーーーーーー

サイコロを作るには何が必要でしょう?

1〜6(通常サイコロ)の数字と、サイコロを振ること。

数を用意するのは簡単なので…サイコロを振るのを

import random

a = random.randint(1,6)←ここの数を変えるとサイコロの数変えられます
aは英数字ならなにを入れても構いません。
これを関数と言います。

サイコロだけではなくおみくじを作ったり、ランダムが必要であればランダム関数を使えます。

まとめ

“`python3
import random
dise = random.randint(1,6)
print(“サイコロ”)
“`

random,randinはそれ以外にも
random.random() :0から1までのランダムな数値を出力する。(小数点だからね??)
random.randint(a, b) :aからbまでの間のランダムな整数を出力する
という種類があります。

それではまた別の記事でお会いしましょう。

元記事を表示

python tkinterで神経衰弱作ってみた

# tkinterで神経衰弱作ってみた
初投稿
python歴約4ヶ月なのでコード汚い
記事の書き方とかコードとか何かアドバイスあればお願いします。
ファイル分けろって意見は大丈夫です。これから頑張ります
## クラス変数
“`py
import tkinter as tk
import time
from trump import Trump

class Game:
index = 0
count = 0
turn = 0
num = 0
scores = [0, 0]

before_x = 20
before_y = 20
check_x = list()
check_y = list()
cursor_x = 0
cursor_y = 0
mouse_x = 0
mouse_y = 0
mouse_c = False

trump_back = list()
trump_list = list()
for i in range(4):
trump_back.append([0,0,0,0,0,0,0

元記事を表示

Pythonの基礎知識(第一回の授業で自分が書いたノート)

# 関数
Pythonにはさまざまな関数が存在する。
例)
print() ⇨()内に入れたものをターミナルに出力する関数
len() ⇨()内に入れたものの文字数や要素数を数える関数
関数=便利なプログラム

# print()について
printは、出力と改行の意味を持つ
## 改行を消したい場合…
⇨endに『空文字(“”)』を入れる
“`Python
print(“ハローワールド”,end=””)
“`

元記事を表示

Pythonの開発環境構築

# はじめに
個人的なメモです。
更新していく予定です。

# 対象者
– python の環境をdevcontainer を使って作りたい人

# 使用したマシンについて
– macOS Monterey
– MacBook Pro
– Vscode ver 1.70.1

# Pythonの開発環境を構築する
1. ディレクトリ作成
1. Dockerfile & devcontainer.json 作成
1. poetry の追加, python 周辺の設定など

## 1.ディレクトリの作成
今回は, `python-dev-template` と言う名称でディレクトリを作成しました。
github にも残しておこうと思うので, リポジトリの作成も行いました。
作成後, リポジトリの初期案内に沿ってREADME を作成しただけのリポジトリです。

![スクリーンショット 2022-10-11 22.10.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/298059/0e12a0fc-

元記事を表示

pyenv install x.x.xがエラー終了...原因は最近必須になったあのモジュールに有った

Pythonのバージョン切り分けにpyenvを愛用しています.加えてrbenv,goenv,nodenvも愛用しています.今後も`**env`の利用が増加する可能性も有りそうです.そこで`anyenv`繋がりで全ての`**env`を管理出来る様にするための作業をしました.pyenvを除いて全て上手く再構築出来ました.ところが,pyenvだけ上手く復活しません.pyenv install 3.10.7と実行しようものなら,怒濤のエラー...:scream: :scream_cat: 仕方が無いので,最新バージョンのPython環境の構築には対応していないHomebrew版のpyenvを再度インストールするも,こちらも正常に動作せず,同様のエラー終了に...:scream: :scream_cat: 万事休すかに思われたのですが,原因を探ってみると意外な事実が判明しました.この記事はその記録です.

# 分かった事実: Python3.10.xからOpenSSL1.1.1が必須に
以下の記事で言及が有りますが,どうやらPython3.10.xからOpenSSL1.1.1が必須になりました.

元記事を表示

【Python】プログラミング問題 文字と整数の組のソート2  を自分なりに解説【paiza】

# はじめに
paizaラーニングはプログラミング学習が出来るプラットフォームです。
問題はランク付けしてあり、ランクが上がると難易度がアップします。
paizaラーニングのレベルアップ問題はユーザー同士で解答を教え合ったり、コードを公開することが可能です。
自分が難しいと感じた問題のコードを解説することでスキルアップをする事が今回の目的でした。

誤りや改善点がありましたらご指摘頂けますと嬉しいです。

# お題 
## お題のリンク
https://paiza.jp/works/mondai/prob60/sort_add_9

## 問題文

>1行目に行数を表す整数 n、続く n 行の各行で「文字」と「整数」の組が空白区切りで入力されます。
>n 個の組について、「文字」の値が同じ組同士の数値を足しあわせてまとめ、まとめた数値の降順で
>文字とまとめた数値の組を出力してください。
>この際、まとめた数値は重複しません。

## 入力される値
入力は以下のフォーマットで与えられます。

n
S_1 D_1
S_2 D_2

S_i D_i

S_n D_n

S_i

元記事を表示

wavファイルの作成

何故か急にwavファイルを作りたくなったので作成してみましたので、その際に覚えた知識をメモとして残します。

# ライブラリ
本投稿では下のライブラリを使います。
* math(正弦波を作成するため)
* numpy(1次元配列を扱うため)
* scipy(wavファイルの作成のため)
* playsound(wavファイルの再生のため)

# 波形を作る
サンプルとして100Hzの正弦波を作成します。なお、サンプリングレートを44100Hzとするため、441個で1周期となる正弦波を100個(つまり1秒分)作成しています。
“`python:
import math
data = [ math.sin(2 * math.pi * i / 441) for i in range(44100) ]
“`

# データを整数化する
wavファイルにするには`int16`にしないといけないので、波形の最大値で割り、`int16`の正の最大値である`32767`を掛けてから、`int16`にしています。
“`python:
import numpy as np
data2 = np.int

元記事を表示

Dockerを用いてLabelImgを使用する on Ubuntu

# やり方

下記の内容を記述したDockerfileを用意します。

“`docker
FROM ubuntu:20.04
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && apt-get install -y pyqt5-dev-tools python3-pip git
RUN git clone https://github.com/tzutalin/labelImg.git && \
cd labelImg && \
pip3 install lxml && \
make qt5py3
CMD [“python3″,”labelImg/labelImg.py”]
“`

イメージをビルドします

“`bash
$ docker build -t labelimg .
“`

GUI表示ができるように設定します

“`bash
$ xhost +
“`

コンテナを作成・実行します

“`bash
$ docker run -it –rm -e DISPLAY=$DISPLA

元記事を表示

40代おっさんPythonを勉強する(データ構造と組み込み関数④)

## 本記事について

この記事はプログラミング初学者の私が学んでいく中でわからない単語や概要を分かりやすくまとめたものです。
もし不正などありましたらコメントにてお知らせいただければ幸いです。

## データ構造と組み込み関数

前回の記事


### 辞書型

– 辞書型の作り方
– 基本的な代入

“`python
dic1 = {1:’a’, 2:’b’, 3:’c’ } # 辞書型は{}
print(dic1)
“`

– リストやタプル型から

“`python
pairs = [(1, ‘a’),(2, ‘b’),(3, ‘c’)]
dic1 = dict(pairs) # dictの変換関数で辞書型を作成
print(dic1)
“`

元記事を表示

【Python】CSVファイルに出力する時系列データを更新させない方法

# 現状
Arduinoを使ってセンサのデータを取得し,取得したデータをPythonで受け取ってCSV形式で保存したい.実装したところ,CSVファイルで時系列データが更新されてしまう.

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/642821/e62a4ff8-3bc3-4a09-a634-548bf43256ff.png)

“`python:該当プログラム
date = datetime.datetime.now().strftime(‘%Y-%m-%d %H:%M:%S’)
with open(‘./data.csv’, ‘w’ , encoding= ‘utf-8’ ) as f:
print(‘{},{}’.format(date,data),file=f)
“`

# 解決方法
 `open(ファイル名, モード)`でファイルをモードに従って開く.モードを`a`に変えることで解決できた.`w`は書き込み専用で,ファイルへの書き込みは,同じファイル名の

元記事を表示

Pythonをpyenvを用いて管理する(Mac向け)

## はじめに
ローカルマシンで複数のプロジェクトを開発する時にバージョンの異なるPythonを使うことは往々にしてあると思います。
単一バージョンをインストールしていると、毎回インストールとパスを通す作業が発生しますが、
pyenvの場合はコマンドだけでPythonのバージョンの切り替えが可能です。
(最近はDockerを使うのでホストマシン側のPythonに依存することは少ないかもしれませんが。。)

今回はpyenvのインストールとバージョン変更手順を説明します。

## Homebrewのインストール
ターミナルを開き、以下のコマンドでMacのパッケージ管理ツールのHomebrewをインストールします。
“`
% /bin/bash -c “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)”
“`
参考
https://brew.sh/index_ja

## pyenvのインストール
ターミナルで以下のコマンドを実行します。
“`
% brew install

元記事を表示

MetPyの単位変換

# はじめに

MetPyという気象系Pythonライブラリは,’unit-aware calculations’(単位を陽に定義する計算)の精神に基づき作成されており,事前に変数の単位を定義しておけば単位変換を”よろしく”やってくれるので,つまらない計算ミスを減らすことができる(と思っている).

単位変換を簡単にできるのだが,データのクラスによって使い方が異なり困惑したので,まとめておく.

結論から書くと,pint.quantityは`.to()`というメソッドを,xarary.DataArrayには`.metpy.convert_units()`というメソッドを使う.

# unitsの使い方とpint.quantity

metpy自体はpipやcondaやmacportsで簡単にインストールできる.([Install Guide – Metpy User Guide](https://unidata.github.io/MetPy/latest/userguide/installguide.html))

metpy.units.unitsをインポートする.fromを使う

元記事を表示

metpy.unitsをxarray.DataArrayに適用するワンライナー

# はじめに

[MetPy](https://unidata.github.io/MetPy/latest/index.html)は,[xarray](https://docs.xarray.dev/en/stable/)(多次元データ解析ライブラリ)と[pint](https://pint.readthedocs.io/en/stable/)(単位の概念を付与するライブラリ)を組み合わせた,気象系計算ツールの豊富な大変ありがたいPythonライブラリである.
xarrayに基づいているので,netcdfとの相性はとても良く,使いやすい.

事前処理として,次元のある変数には単位(metpy.units.units)を定義する仕様となっているが,単一変数であってもxarray.Datasetには単位を定義できない,という落とし穴?がある.(複数変数を保持しうるので,考えれば当たり前のこと,,)

“` python3
import xarray as xr
from metpy.units import units

f = ‘file_name.nc’
v = ‘variabl

元記事を表示

OTHERカテゴリの最新記事