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

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

エロマーケットプレースの研究シリーズ 5: LightGBM で人気コンテンツの特徴を調べる (完)

# 前回

https://qiita.com/c1z/items/90b3eb9c34df8ad25755

MeCab にエロ単語を登録するところまでやった

# 今回は

(前提として、このシリーズで、分析しているエロマーケットプレイスは **女性向けエロ音声** に特化したものとなっている)

さて前々前回クロールしたアイテムのデータで LightGBM を使って、どういうタイトルや説明文、タグがついたものが多く再生されるのかという問いに答えていきたい

# 早速コードを書こう

“`python
import numpy as np
import pandas as pd
import MeCab
import unicodedata
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfVectorizer
import subprocess
import os
from sklearn.model_selec

元記事を表示

エロマーケットプレースの研究シリーズ 4: MeCab にサイトに出てくる未知語のエロ単語を登録

# 前回は

https://qiita.com/c1z/items/8d9dee2029b937ccbe3d

MeCab のインストールと、ユーザー辞書を構築するための環境を作った

# 今回は

前々回クロールしたサイトのタグ情報を MeCab の単語として登録していく部分を作っていく

# コード書く

“`python
import numpy as np
import pandas as pd
import re
import MeCab
import subprocess
import os

# MeCab のシステム辞書 NEOLogd のディレクトリを取得
dicdir = subprocess.run([‘mecab-config’, ‘–dicdir’], capture_output=True).stdout.decode(‘utf-8’).strip()
neologd_dir = os.path.join(dicdir, ‘mecab-ipadic-neologd’)

# 前々回クロールしてきた情報を読み込む
df = pd.read_csv(‘ou

元記事を表示

気象庁の過去気象データをPandasでスクレイピング

https://qiita.com/Cyber_Hacnosuke/items/122cec35d299c4d01f10

https://qiita.com/TaichiEndoh/items/97eedb1899d38fe00711

Pandasでスクレイピング

その他内容は上記記事を参考

“`python
import time
import pandas as pd

# 札幌
prec_no = 14
block_no = 47412

# 期間 ※年と月だけ利用
start = “2022/01/01”
end = “2022/04/30″

# 期間中の月初を作成
dt_range = pd.date_range(start, end, freq=”MS”)

dfs = []

for dt in dt_range:

url = f”https://www.data.jma.go.jp/obd/stats/etrn/view/daily_s1.php?prec_no={prec_no}&block_no={block_no}&year={dt.year

元記事を表示

深層学習によるFX予測

# 自己紹介
機械学習エンジニアを目指しており、現在は社内SEをしております。
今回は、自分が大学生時代からやりたかったことを題材にして、学習結果として残そうと思います。Qiita初投稿や機械学習勉強中でもあるため、至らない点があると思いますが、ご容赦ください。また、気づいた点等ございましたら、ご指摘いただければ嬉しいです。

# 目的
Yahooファイルナスから取得できるFXのデータを用いて、デイトレードの予測をしたい。

# 環境
言語:Python(Google Colaboratory)
予測データ:USD/JPY(Yahooファイナンス)

# 使用モデル等
モデル:RNN(再帰型ニューラルネットワーク), LSTM(長・短期記憶)
損失・評価関数:mse(平均二乗誤差), rmse(平均二乗平方根誤差)
データ:高値, 安値

# 目次
1. はじめに
1. 必要なライブラリを取得
1. Yahooファイナンスから取得したデータを保存
1. 取得したデータを表示
1. 訓練データと検証データの作成
1. モデルの作成~結果の出力
1. 考察
1. 反省と課題
1. 感想
1

元記事を表示

PythonでDIするコードを書いてみました。

# はじめに

DI研究の一環です。
Pythonの標準機能のみでDIを目指します。

# コード

先に全体を乗せ、後で詳細に説明していきます。

## 実装

“`py
class DependencyInjection:
def __init__(self, declarations):
self.di_container = dict()
for c in declarations:
init_param = c.__init__.__annotations__
correspond = {
k: self.di_container[v]
for k, v in init_param.items()
}
self.di_container[c] = c(**correspond)

class A:
def __init__(self):
self.iam = ‘class A’
self.di = None

class B:
def __init__

元記事を表示

Easy OCR memo

# はじめに

Easy OCRに関するメモです。

# Easy OCRの設置

“`python
pip install easyocr
“`

* CUDA利用時は、easyocrの設置前にtorchをインストールする必要があります。

** opencvとクラッシュを起こすときがあります。
2022年5月の基準に、opencv-python==4.5.4.60がOKです。

“`python
pip uninstall opencv-python-headless
pip install opencv-python==4.5.4.60
“`

# Easy OCRの利用

“`python

import easyocr

#インスタンスを立てます
reader = easyocr.Reader([‘en’])

#numpy arrayを入力
img_path = ‘./image/001.png’
img_array = cv2.imread(img_path)

#OCR実施、結果を返してもらう。
result = reader.readtext(img_

元記事を表示

Youtube上にカフェを作った話

こんにちは、趣味でプログラミングに勤しむ大学生です。

今回の記事では僕が作成したYoutube上のカフェ、「バーチャル勉強喫茶 Virtual Study Cafe」について述べていきます。

少しでもいいなと思ったらLGTMよろしくお願いします〜

# つくったもの
まず、Youtube上のカフェってなんやねん。。。説明しろや( *`ω´)

ひー、すんません!!とりあえず「一見は百聞にしかず」、まずは下の動画を見てください。
※なんか画面ちっさくなっちゃった。とりあえず画面の真ん中あたりをジーーっと見ると変化してる様子がよくわかりますorz

![StudyCafe_AdobeCreativeCloudExpress.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1912865/04006c8d-9cba-4c10-667c-5b2ba03cee45.gif)

上記動画は、Youtubeの配信画面です。

配信画面にカフェが映ってますね。このカフェにチャットを打ち込むことでアクションを起こすこと

元記事を表示

2022年春、WindowsでPythonはじめるためにDockerいれる

「そうだ、Pythonで機械学習やろう」と思い立ったので、自PCのwindowsへPython環境を構築することにする。

# 方針検討
いろんなアプリケーションを入れると諸々干渉し合うことがある。
Dockerを導入すると、そういった環境構築で躓くことはなさそう&定番のやり方っぽいので、これでいく。

Anacondaが機械学習にいいらしい。

https://qiita.com/ku_a_i/items/8c7d91f6e13a5091f51c

この中でWindowsでDockerを始める手順があったので、この通りやっていく。

https://qiita.com/techpit-jp/items/f4a1319a909dd508f372

# 実践

ほとんどこの記事どおりで進んでいける。素晴らしい。

Ubuntu 20.04.4 LTSも同様。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/23504/46a0f225-f210-06fc-00ec-5c470fb0b

元記事を表示

競技プログラミング用ユーザースニペット(Python)

# 初めに
先日AtCoderで茶色になったのでアウトプットとして書いてみます。
技術的なことは他の方がたくさん書いているので、使用しているユーザースニペットについて書いてみようと思います。

# スニペットとは
あらかじめ書いて登録したコードを短いキーワードで呼び出せる機能です。
詳しくは[こちらの記事](https://qiita.com/12345/items/97ba616d530b4f692c97)を参考にしてください。
[こちらのサイト](https://migi.me/vsc_snippet/)を使えば簡単にスニペット用コードが作れます。

`ファイル` -> `ユーザー設定` -> `ユーザースニペット`から編集できます。
![スクリーンショット (451).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2186646/c5d84b52-312f-6713-123a-a822e600d2df.png)

# 私が使っているスニペット
少し長いので分割しながら解説します。

まずはいわゆる

元記事を表示

PythonでもQiitaApiから自分の記事一覧を取得したい

先日@nuxt/axiosを使ってQiitaApiから自分の記事一覧を取得しました

https://qiita.com/sYamaz/items/10c8c9db83e5dad62b90

ただ、この記事の最後に書いたようにスクリプトでコードを自動生成する方が目的に会っていると思っていたのでPythonでQiitaApiにアクセスしようと思います

### 環境

* Python 3.8.9
* `pip install requests`

### スクリプト

`requests`パッケージを使用しApiから記事一覧を取得します。簡潔に書くと以下

“`python
import requests
import json

response = requests.get(‘https://qiita.com/api/v2/items?query=user:sYamaz’)

items = json.loads(response.text)
for item in items:
# item(=記事)ごとの処理

“`

この内容をもとにarticles.tsを

元記事を表示

もっともツイートされているMOBAを調べてみる

直近7日間でもっともツイートされているMOBAのゲームアプリはどれなのか調査を行いました。

調査を行ったMOBAのゲームアプリは以下の3つです。

![pokemon unite-アイキャッチ.jpeg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849608/8fc0042d-7895-aee3-ed23-2fbdd789ae31.jpeg)
![wildrift-アイキャッチ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849608/9d3e1399-a662-d6ff-5eb5-9ff241e1b0fd.png)
![モバイル・レジェンドカテゴリ.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/849608/6c6dcc7e-9e2d-8743-cca6-c747c4ba5849.png)

それぞれ、『ポケモンユナイト』『ワイ

元記事を表示

ブラウザ上でコード補完つきの機械学習開発環境を構築する

Webブラウザ経由でどこからでもアクセスできてVisual Studio Codeのようにコード補完もしっかりあり、ついでにCPU/GPUも両方つかえる機械学習の開発環境。そんな駅から徒歩3分オートロックの家電付き物件並みの環境を構築する方法を解説します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/25990/68674335-1edc-c438-2d89-a79778ccb9db.png)

Amazon SageMaker Studio Labを機械学習の開発環境として使用し、文字通りIDEのサーバーである[Code Server](https://anaconda.org/conda-forge/code-server)をStudio Lab上で起動します。これにより、Studio Lab内にあるJupyter NotebookをIDEで編集できます。
Amazon SageMaker Studio Labのアカウント登録手順は[Amazon SageMaker Studi

元記事を表示

AtCoder ABC252 C – Slot Strategy を 総当たりと解説通りに解く

今回はリールの長さ及び登場する絵柄の種類が10と固定されていますが、これを$m$とします。

https://atcoder.jp/contests/abc252/tasks/abc252_c

これを以下の2つの解き方で解きます。

– 1: 解けるまでの時間を愚直に総当たりする解法 O(n^2m^2))
– 1-2: 1を少し工夫した解法O(nm^2)
– 2: 解説通りの解法 O(max(nm, m^2))

# 1: 解けるまでの時間を愚直に総当たりする解法 O(n^2m^2)
本問題の条件では、揃える文字$x$を決めたとき、$n$本のリールそれぞれを使ったかを覚えておくことで以下のように解くことができます。
– STEP1: 今の時間をcurtimeとする。この時、各リールのindexが`curtime % 10`の位置の文字が使える(curtimeでボタンを押すと、その数値が表示される)
– STEP2: 使っていない各リールを見ていき、使えるリールがあるなら使う(使えるリールが複数あった場合、どのリールを使っても結果は変わりま

元記事を表示

ABC252 A~D問題 ものすごく丁寧でわかりやすい解説 python 灰色~茶色コーダー向け #AtCoder

ABC252(AtCoder Beginner Contest 252) A~D問題の解説記事です。
灰色~茶色コーダーの方向けに解説しています。

その他のABC解説、動画などは以下です。

更新時はツイッターにて通知します。

https://qiita.com/sano192/items/54accd04df62242b70f0

# A – ASCII code

https://atcoder.jp/contests/abc252/tasks/abc252_a

入力が97なら「a」、98なら「b」と条件分岐を全て書けば解けます。
文字列を出力するときはprint(“a”)と「””」(ダブルクオーテーション)をつけることに気をつけてください。
(【提出1】)

ちょっとめんどくさいなーと思った人は「python 文字コード 変換」で検索してみましょう。文字コードから文字へ変換する方法が見つかります。
コンテスト中でも検索して知らないことを調べるのは非常に有効な方法です。

chr(文字コード)と書くことで「文字コード」

元記事を表示

python if 文を利用した 臨床データ処理 適応疾患が右と左で別れる場合

臨床データを利用するソースコードを作成しています

適応疾患が左の時と右の時でそれぞれ 特徴量を変更する仕組みなのですが

テストデータに含まれる適応疾患が 

左しかなかったり

右しかなかった場合

動かない仕組みとなってしまったため以下のソースコードを作りました

#”ここに実施したい処理を入れる”

の部分に実施したい処理を入れたら完成です

“`
c_code = “Shift-JIS”
#左とする
num = ‘Left’
#疾患〇〇 だけフィルタする
disease = ”

image_file_path = ‘./input/Test_data_input/input_data.csv’
image_file_path2 = ‘./input/columns/columns.csv’
with codecs.open(image_file_path2, “r”, c_code, “ignore”) as file:
dfpp_c = pd.read_table(file, delimiter=”,”)
test_columns = dfpp_c
#

元記事を表示

Blenderでかっこいいロゴを作るPythonスクリプト

# Blenderとは
Blenderは主に3DCGを作るためのフリーでオープンソースのソフトウェアです。[公式サイト](https://www.blender.org)よりどなたでもダウンロードして使用することができます。

Blenderではシーンの中にオブジェクトを追加し、そのオブジェクトを加工・変形(モデリング)するとともにマテリアル(色や質感)を付与することによって所望の物体を3D空間内に作り出します。最後にライトやカメラを設置することで、好きな場所から物体を撮影した画像を出力(レンダリング)する、というのが基本的な流れになります。

また、Blenderはpythonコードによってオブジェクトの配置や色付け、撮影など多様な操作ができるように設計されています。そこで今回は、blenderの知識が全くなくとも、blender上で実行するだけで立体的なロゴが作れるスクリプトを作成します。

このスクリプトによって、例えば以下のような「ロゴ画像」を生成することができます。

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

元記事を表示

OpenCV チートシート【動画】

### OpenCVを導入
~~~python
import cv2
~~~

### 動画を読み込み
~~~python
# 動画ファイル
cap = cv2.VideoCapture(‘ファイルのpath’)
# PCの内蔵カメラ
cap = cv2.VideoCapture(0)
# USBカメラ
cap = cv2.VideoCapture(1)

# 動画ファイルのフォーマットはMP4、AVI、FLVなどに対応している
# cv2.VideoCaptureはcv2.VideoCaptureオブジェクトを生成するコンストラクタ
# 以降, cap は cv2.VideoCaptureオブジェクト を指すことにする
~~~

### 動画の情報の取得
~~~python
# 動画の横サイズ
width = cap.get(cv2.CAP_PROP_FRAME_WIDTH)
# 動画の縦サイズ
height = cap.get(cv2.CAP_PROP_FRAME_HEIGHT)
# 動画のフレームレート
fps = cap.get(cv2.CAP_PROP_FPS)
# 動画全体

元記事を表示

Python OpenCV で sRGB -> YUV に変換するメモ

sRGB -> YUV に Python で OpenCV あたりで変換したい.
画像サイズ大きいので高速処理したい.

ネット上では YUV -> RGB ばかりでつらい 😥

## YUV

いろいろフォーマットあります.

https://hk.interaction-lab.org/firewire/yuv.html
https://www.klab.com/jp/blog/tech/2016/1054828175.html

通常は 420(8bit) あたりでしょうか

## OpenCV color conversion

https://docs.opencv.org/3.4/d8/d01/group__imgproc__color__conversions.html#ga4e0972be5de079fed4e3a10e24ef5ef0

## YUV420(IV12)

`COLOR_RGB2YUV_I420` でいけます!

## NV12

cv2 では直接はサポートしていないです 😥

とりあえずぺろっと処理する.

https://stacko

元記事を表示

Pythonによるポイントアンドフィギュアの算出

# はじめに

## 回想録

投資に使われる数あるテクニカル指標のうち、一風変わったものがポイントアンドフィギュア(P&F)である。
FX投資をやっていた十年以上前に自作でPythonの算出プログラムを書いて毎朝メールで通貨ペアのP&Fを送るようにしていた。

ところが2008年に起きたリーマンショックの前にすべての金融工学やテクニカル分析が無力になり私も痛い目にあった。
その結果FXから撤退し、テクニカル分析もやらなくなった。

## そして今

投資自体はやめたわけではなく、あれから数年経ってもテクニカル分析に対する信頼性は大きく変わってはいないけど、勘でやれるほど甘くはないため再度勉強しながら取り組もうとしている。

P&Fに関しては作図はできても内容を汲み取ることができておらず宝の持ち腐れ状態だった。
そして改めて使おうと思ったが自作プログラムがどこかわからず、スクラッチから作り直そうとしたがまあまあ面倒くさい。
なので世に出回っているものを探してみた。

アカウント作成やAPIキーの取得など要らずに利用できる[stockcharts.com](https://stockch

元記事を表示

DyBNN論文読み

# はじめに

DyBNNの論文を読んだ要約です。
自分用にまとめたものなので、理解の漏れなどありましてもご容赦下さい。
また、より詳細な内容を知りたい場合は元の論文をご覧ください。

### DyBNNの概要
– 論文名: Dynamic Binary Neural Network by learning channel-wise thresholds
– 著者: Jiehua Zhang, Zhuo Su, Yanghe Feng, Xin Lu, Matti Pietikäinen, Li Liu
– 公開: 2021年10月8日
– URL: https://arxiv.org/abs/2110.05185

入力によって閾値とシフトパラメータを動的に生成できるDySign関数とDyPReLU関数を用いて、ReActNetのRSign関数とRPReLU関数を置き換えたBNN。モデルの表現能力が向上し、精度が向上した。

# ReActNet

– URL: https://arxiv.org/abs/2003.03488

ReActNetとは,BNNが入力の特徴分布に敏感であ

元記事を表示

OTHERカテゴリの最新記事