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

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

python3.6 以降で変数を文字列に埋め込んで出力する print(f “{variable}”)

# 例

“`py
name = “Alice”

print(f”My Name is {name}”) # My Name is Alice
“`

# チャットメンバー募集

何か質問、悩み事、相談などあればLINEオープンチャットもご利用ください。

https://line.me/ti/g2/eEPltQ6Tzh3pYAZV8JXKZqc7PJ6L0rpm573dcQ

# メンター受付

https://menta.work/user/5694

元記事を表示

statsmodelsのadd_constantで切片項が付かない!??

# 切片項が付かない

 そうです。切片項が付かないんです。何度コードを回してもエラーもないし、切片項もないんです。

# 背景

 kaggleのコンペのために回帰分析で予測モデルを作っていたところ、statsmodels.OLS(train_y, train_X).fit()のところで、よくエラーが生じていました。
 適用するデータには欠損値がないし、ダミー化もしている。処理も間違っていなさそうなのに、なんでじゃい!!とずっと困惑しておりました。

 そこで、あることに気づいたのです。そうです。直前のtrain_X = statsmodels.add_constant(train_x)のところでtrain_Xに切片項’const’が加えられていないのです。

 何回回しても付かない。なのにモデル作成時の方には’const’が付いている。モデル作成時と処理はほとんど変わらない。でもモデル当てはめ時のデータには’const’が付かない…。

 ネットという大海を浮遊、もしくは森林をさまよっていた際に、とあるオアシス(記事)にたどり着きました。

 そうです、「公式ドキュメント」です

元記事を表示

Kaggleで勝つデータ分析技術_3章の欠損値についてまとめてみた

[Kaggleで勝つデータ分析技術](https://www.amazon.co.jp/Kaggle%E3%81%A7%E5%8B%9D%E3%81%A4%E3%83%87%E3%83%BC%E3%82%BF%E5%88%86%E6%9E%90%E3%81%AE%E6%8A%80%E8%A1%93-%E9%96%80%E8%84%87-%E5%A4%A7%E8%BC%94/dp/4297108437)の第3章 『特徴量の作成』の欠損値についてまとめてみました。

分析コンペでモデルの精度を上げるためにも、特徴量の作成は最も重要な要素の一つで、その中でも欠損値の取り扱いは大切です。
ここでは、Kaggleで勝つデータ分析技術の欠損値の言及がされているところをまとめてみました。

## そもそも欠損値とは
欠損値とは、値が入力されていない空の値のことを示します。
下記のテーブルの中で、名前が入力されていない行があります。
この入力されていない値が欠損値になります。

| 名前 | 年齢 |
|:-:|:-:|
| 安井 | 28 |
| | 25 |
| 石崎 | 21

元記事を表示

姿勢推定AI(Pose Estimation)で色々遊ぶ

# 動機
姿勢推定AIというものをご存じでしょうか?
画像認識AIの中でも人間の位置を抽出するものは有名ですが、AIはさらに検出した人の頭や手・足などの部位の特定まで行うことができます。一見ハードルが高そうなのですが、今回の記事では姿勢推定AIが意外と簡単に実現できるよ~ということに加えて、姿勢推定AIを利用した様々なアプリケーションを紹介し、姿勢推定AIの応用可能性についてお伝えできれば良いかなと思います。

# 使用ソフトウェアとバージョン
– Python 3.6
– Tensorflow 2.2.0
– その他OpenCV等のライブラリ

# 動作サンプルとソースコード
![movenet_demo.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/927556/7a17187c-c2c8-256e-99dc-4916dae50585.gif)
(出演:みきをさん @michelle0915)

まずは姿勢推定AIの実行結果です。
今回使用したAIモデルはMoveNet[^1]と呼ばれるモデルで、検

元記事を表示

djangoで使うコマンド集(基礎編)

仮想環境作成

windows
virtualenv 仮想環境名
cd 仮想環境名
Scripts\activate.bat

Mac
mkdir 仮想環境名
cd 仮想環境名
python3 -m venv 仮想環境名
source 仮想環境名/bin/activate

インストール
pip install Django

プロジェクト作成
django-admin startproject プロジェクト名

簡易サーバー立ち上げ
python manage.py runserver
アクセス先
http://127.0.0.1:8000/

データベースモデル反映
python manage.py makemigrations

python manage.py migrate

管理ページ作成
python manage.py createsuperuser
アクセス先
http://127.0.0.1:8000/admin/

元記事を表示

OpenCV で (-212:Parsing error) Failed to open NetParameter file: xxx.cfg in function ‘readNetFromDarknet’ が発生したときに確認すること

## はじめに

OpenCV は画像処理ライブラリです

簡単に画像加工が行え、画像データを行列(numpy array)として扱えるため、機械学習でもよく使います

https://opencv.org/

バージョン 3.3 からは DNN (Deep Neural Network) モジュールが追加され、
OpenCV で機械学習モデルを使った推論が実行できるようになりました

readNetFromDarknet や readNetFromTensorflow などによって、
他の機械学習ライブラリで学習したモデルを読み込んで使うことがきます

## エラー内容

先日、以下の記事でやったのと同じように、Docker コンテナで AWS の Lambda 関数を作っていた時のこと

https://qiita.com/RyoWakabayashi/items/0734f7f0a76a5dad3770

今回は Darknet で学習したモデルを OpenCV で動かそうとしていました

https://pjreddie.com/darknet/

以下のようなコードでロードす

元記事を表示

pythonでZoom APIを触ってみた

近年コロナウィルス感染症の流行以来、リモートワークが日本国内で進んでいる。
以前より広く使われている`Zoom`だが、APIが公開されており、
1. ユーザー一覧の取得[^1]
2. ユーザーのミーティングIDやウェビナーIDの生成[^1] が行える。

今回はpythonを使ってZoom APIを触ってみようと思う。
しかし、Python標準ライブラリ`urllib`, `json`等を使って、直接リクエストをZoom APIへ送って…とするのは非常に面倒である。
よって、`Zoom API`を体験することが目的であるため、`pyzoom`[^2]を使用し、Zoom APIを触っていく。

# 準備
Python 3.9.1
`venv`で仮想環境を作成し、`pip install pyzoom`にて`pyzoom`をインストールした。

Zoomのユーザー登録をしていない方はまず作成すること。
ZoomにsigninしてJWTアプリを作成する。[^3]
# ミーティング部屋・会議室を作ってみる
“`create_room.py
from pyzoom import Zoo

元記事を表示

「白って200色あんねん」

### ゲームを作って確かめてみました。
Pythonで初めて作ったゲームです。クラス作成に慣れておらず、コード的に稚拙です。コードの訂正・修正案等につき、意見を頂けたら嬉しいです。
概要:
White216)216色の白が対象です。白はRGB値の順に並んでいます。ヒントボタンが2つあり、RGB値を表示します。
White125)125色の白が対象です。Changeボタンにより白がランダム配置となります。ヒントボタンは1つです。
感想:白は200色あるかもしれないが区別するのは難しい。125色でもランダムにすると難易度があがります。
注意事項:
作成PCは、MacBook Air (11-inch, Early 2015)
モニターのピクセルサイズは、(width=1152, height=648)
MacOSでは、buttonのbgが機能しないので、tkmacosxを使用。画面のレイアウトが崩れたり、Windowsでは動作しない可能性あり。
疑問点:
tkinterでframeが重なっている時、初期状態でのframeの順番は、配置ではなく定義順(最初に定義したframeが一番下に位置

元記事を表示

python グラフを色をつけたり -csv-

作成したグラフに色や年代を追加

“`python
import tkinter
import csv

root = tkinter.Tk()
root.title(“売り上げの推移”)
ca = tkinter.Canvas(width=800, height=480, bg=”white”)
ca.pack()

f = open(“売り上げデータ.csv”,encoding=”utf-8″)
cr = csv.reader(f)
dat = list(cr)
f.close()

FNT = (“Times New Roman”, 12)
bar_x = 40
bar_b = 320
for ye in range(1,6):
ca.create_rectangle(bar_x, bar_b+5, bar_x+140, bar_b+25, fill=”gray”, width=0)
ca.create_text(bar_x+70, bar_b+15, text=dat[0][ye], fill=”white”, font=FNT)
c

元記事を表示

if __name__ != ( ‘__main__’ ) : だったらどう動く?

## 「おまじない」って言われる `if __name__ == (‘__main__’):` をちゃんと理解したい

### おさえたいポイント
そもそも、`__name__` と `__main__` ってなに?

#### `__name__`とは:
> クラス、関数、メソッド、デスクリプタ、ジェネレータインスタンスの名前が入るための特殊な**変数**
> モジュールやパッケージがインポートされると、__name__にはモジュールの名前がセットされる

**■インタプリタで実行**
“` 標準モジュール.py
>>> import subprocess
>>> subprocess.__name__
‘subprocess’
“`
:::note info
**実行フローと結果**
+ import文でモジュールを読み込む
+ _module(ここではsubprocess)_.__name__で特殊属性の__name__を表示する
+ ‘subprocess’としてモジュール名が表示される
:::

**■ファイルで実行**
“`
directory/
| — my

元記事を表示

点群からデプス画像(低密度)を作る

# 点群からデプス画像(低密度)を作る

## はじめに
前回numpyを利用して、デプス画像を点群に変換するやり方を説明した。
今回では前回の逆  点群からデプス画像(低密度)への変換を話します

## テスト用例
テスト用例としては、[kittiデータセット](http://www.cvlibs.net/datasets/kitti/raw_data.php)を使います
![](https://img.inotgo.com/imagesLocal/202205/05/202205050417366431_5.png)

以下の文章で使ったのは*2011_09_26_drive_0005* 中の第150フレーム画像データとLiDARデータ
![0000000150.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1775186/650f550f-9314-b910-4110-30b478086dc5.png)

コードはオンラインの形で[google Colab](https://colab.rese

元記事を表示

Orange3を使ってGUIで機械学習に入門する

### はじめに
ひょんなことから、”Orange3″というGUIベースの機械学習用ソフトウェアの存在を知った。どうやら、Scikit LearnとScipyでできることは大体できる、というソフトウェアらしい。簡単に触ってみたところ、「コーディングはしたことがないけれど、機械学習のプロセスを学びたい」という人にはちょうど良さそうだった。せっかくなので、Orange3上での操作と、それに該当するPythonのコードを併記することにした。これを一緒にみれば、機械学習のプロセスとコーディングを同時に学べるのでは?という目論みである。

### この記事で対象とする人
・コーディングしたことはないけれど、機械学習の勉強をしたい人
・↑のような初心者用の教材を探している人
・管理職やマネージャーなんかで、現場からは距離があるし今さらコーディングを勉強するのは無駄では?しかし部下の評価をしなければ、、、という人

### 使用するソフトウェアとパッケージ
Orange3は、以下からダウンロードできる。インストールは、ダウンロードしたものをダブルクリックすることにより行う。この記事の執筆時点では、最

元記事を表示

Eclipse MRAA on Raspberry Pi 4 – Python

Eclipse MRAAを、Raspberry Pi 4で動かしてみました。Pythonで。

# MRAAとは?

GPIOやI2Cといった、ハードウェア操作するC/C++ライブラリです。
実装はC/C++ですが、JavaやPython、JavaScriptからも呼び出すことができます。

詳しくはこちら。

* [Eclipse MRAA project description](https://projects.eclipse.org/proposals/eclipse-mraa)
* [Eclipse MRAA source code](https://github.com/eclipse/mraa)

# Raspberry Pi 4

使用したラズパイとOSはこちらです。

* Raspberry Pi 4 Model B
* Raspberry Pi OS Lite (32-bit) – 2022-04-04

## インストール

ソースを取得してコンパイル、インストールします。

“`
sudo apt update
sudo apt install git bui

元記事を表示

pandasでUTCの日時の文字列を読み込んで、JSTに変換する

`tz_convert()`が`pandas.Series`型に直接適用できないのがハマりポイント。

“`python
# datetime列に文字列で日時を登録する
df = pd.DataFrame([{“datetime”:”2022-07-03 00:00:00″},{“datetime”:”2022-07-03 01:00:00″},{“datetime”:”2022-07-03 02:00:00″}])

# datetune列の内容をDatetime型かつaware(UTC)で、”datetime_utc”列に入れる
df[“datetime_utc”] = pd.to_datetime(df[“datetime”], utc=True)

# JSTに変換したデータを”datetime_jst”列に入れる
df[“datetime_jst”] = df[“datetime_utc”].dt.tz_convert(‘Asia/Tokyo’)
“`

書いてから気付きましたが、Python3のタイムゾーンの扱い的に`’Asia/Tokyo’`の部分は環境依存か

元記事を表示

macにpyAudioを入れるときに”portaudio.h”が見つからないと言われる

詰まったのでメモしておきます。

こんなエラーが表示されます。

“`Shell
src/_portaudiomodule.c:29:10: fatal error: ‘portaudio.h’ file not found
#include “portaudio.h”
^~~~~~~~~~~~~
1 error generated.
error: command ‘/usr/bin/clang’ failed with exit code 1
“`

# 解決方法

pipとhomebrewが最新であることを確認してください。

その後以下を実行

“`Shell
brew install portaudio
“`

その後以下を実行

“`Shell
pip install –global-option=’build_ext’ –global-option=”-I$(brew –prefix)/include” –global-option=”-L$(brew –prefix)/lib” pyau

元記事を表示

複数に渡るページでの画像収集スクレイピング

## はじめに

どうも。スクレイピング歴14日の初心者です。
本記事は[こちらの続き](https://qiita.com/The_Boys/private/0862cb8a72100519aee9)となりますのでコードを例として画像収集の方法お伝えできればと思います。
勿論前回を見なくても進められる構成にしております。

### 環境

windows11
jupyterlab

### 本記事の目的

– 画像収集の為にキーワード検索した結果、複数のページに渡る場合に、全ページから画像を収集する。
↓ このような場合に対処致します ↓。
![2022-07-07_21h10_28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2719278/e77ef92e-f8a0-ea54-2fa3-e5c8bc8abcb0.png)

#### 教材

https://qiita.com/The_Boys

元記事を表示

investpyを用いたスクリーニング(1)〜移動平均線からパーフェクトオーダー銘柄を抽出

# はじめに

[investing.com](https://www.investing.com/)は株価や経済指標など有益な投資情報を提供しているポータルサイトである。
一方Yahoo FinanceのようにAPIによるデータ取得はできない。(参考: [APIは提供されますか。 – Investing\.com サポート](https://www.investing-support.com/hc/ja/articles/115005473825-API%E3%81%AF%E6%8F%90%E4%BE%9B%E3%81%95%E3%82%8C%E3%81%BE%E3%81%99%E3%81%8B-))
しかし[investpy](https://investpy.readthedocs.io/)を用いるればPythonで簡単に操作できる。

今回パーフェクトオーダーと呼ばれるチャート分析法を用いて該当銘柄を抽出する。

## パーフェクトオーダーとは

順張り(株価が上昇している時に買う、または下降している時に売る)に用いられる手法の一つで移動平均線が短期、中期、長期の順で並んでいる

元記事を表示

LINE Notify で天気予報を通知する

## LINE Notify アクセストークンを発行する

次のページを参考に「アクセストークン」を取得する。

LINE Notify アクセストークン

## API を確認する

**通知系**

https://notify-bot.line.me/doc/ja/

## Python実装

token = “アクセストークン” のところは、先ほど取得した自身のアクセストークンに変える。

“`python3
!pip install BeautifulSoup4
from bs4 import BeautifulSoup
import requests
import datetime
import locale

## 日付取得
locale.setlocale(locale.LC_TIME, ‘ja_JP.UTF-8’)
today_date = datetime.date.today()
tomorrow_date = today_date + datetime.timedelta(days=1)
today_dat

元記事を表示

Pythonを用いて株式・長期債・コモディティの見通しを予測してみた

今回は、SARIMAモデルを用いた時系列分析を行い、未来予測をしてみようと思います。

### ★目次
0. 自己紹介・導入
1. データの読み込み
2. データの整理
3. データの可視化
4. データの周期の把握 (パラメーターsの決定)
5. s以外のパラメーターの決定
6. モデルの構築
7. データの予測とその可視化
8. 予測結果・考察・まとめ

## 0.自己紹介・導入
### ■自身のレベル
・株式会社Aidemyにて受講可能な「データ分析講座(3ヶ月)」を受講しました。
・データ分析の業務経験は無く、講座内容を参考に今回初めての実践として取り組みました。

### ■実行環境
・サービス
Google Colaboratory
・言語
Python 3.7.13
・ライブラリ
pandas-datareader 0.9.0
datetime (Python標準)
pandas 1.3.5
sklearn 0

元記事を表示

Pythonのisnumeric()の挙動を知らなかった件

# はじめに

え!知らなかったデス?
というわけで、いろいろな文字を調べてみました。

# 試した数値
|式|真偽|備考|感情|
|—-|—-|—-|—-|
|”1″.isnumeric()|True|半角数字|?|
|”1.2″.isnumeric()|False|半角数字小数|?|
|”1”.isnumeric()|True|全角数字|?|
|”一”.isnumeric()|True|漢数字|?|
|”壱”.isnumeric()|True|大字|?|
|”①”.isnumeric()|True|丸数字|?|
|”❶”.isnumeric()|True|丸数字(塗りつぶし)|?|
|”⑴”.isnumeric()|True|カッコ数字|?|
|”Ⅰ”.isnumeric()|True|ローマ数字|?|
|”¼”.isnumeric()|True|1/4|?|
|”٧”.isnumeri

元記事を表示

OTHERカテゴリの最新記事