Python関連のことを調べてみた2020年12月03日

Python関連のことを調べてみた2020年12月03日

量子コンパイラを作る。 その6

#概要

量子コンパイラを作る。
練習問題、全加算器、やってみた。

#コードを書く。

“`
make 8
in 0 2
wire 3 5
xor 1 2 3
and 1 2 4
xor 0 3 7
and 0 3 5
or 4 5 6
out 6 7
“`

#コンパイル結果

“`
from blueqat import Circuit

print (Circuit(8).h[ : 3].ccx[1, 2, 3].cx[1, 4].cx[2, 4].ccx[0, 3, 7].cx[0, 5].cx[3, 5].ccx[4, 5, 6].cx[4, 6].cx[5, 6].m[ : ].run(shots = 1000))

“`

#真理値表で確認。

![無題.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/18104/a3c9fbe1-67d1-1366-2ec8-e045f12b2df4.jpeg)

#回路図で確認。

![無題.jpg](https://qiita-image

元記事を表示

DockerfileでPoetryを使用して依存関係パッケージをインストールする

この記事は[Zeals Advent Calendar2020](https://qiita.com/advent-calendar/2020/zeals)の2日目の記事です。見ていただきありがとうございます!

今回はPipenvの代替やら色々言われているPoetryをDocker上で使用する方法を書いていきます。
また、この記事はほとんど公式ドキュメントやGithubリポジトリのissueを参考にしています。正確な情報を知りたいのであれば、ぜひ公式ドキュメントを読んでみてください。
https://python-poetry.org/

## 記事を書いたときの動作環境

* MacOS Big Sur 11.0.1
* Docker for Mac 2.5.0.1

## この記事の流れ
今回はこのような流れで開発していきます。
[Poetryのインストール方法](#Poetryのインストール方法)
[Poetryの設定](#Poetryの設定)
[Poetryの環境を作成](#Poetryの環境を作成)
[pyproject.tomlへのパッケージ追加](#pyproject.

元記事を表示

真理値表から論理式を求める。 その2

#概要

sympyで真理値表から論理式を求める。
and,or,not,nand,nor,xorやってみた。

#サンプルコード

“`
import sympy as sym

print(“>and”)
print(sym.POSform([‘a’, ‘b’], [[1, 1]]))
print(sym.SOPform([‘a’, ‘b’], [[1, 1]]))
print(“>or”)
print(sym.POSform([‘a’, ‘b’], [[1, 1], [0, 1], [1, 0]]))
print(sym.SOPform([‘a’, ‘b’], [[1, 1], [0, 1], [1, 0]]))
print(“>not”)
print(sym.POSform([‘c’], [[0]]))
print(sym.SOPform([‘c’], [[0]]))
print(“>nand”)
print(sym.POSform([‘a’, ‘b’], [[0, 0], [0, 1], [1, 0]]))
print(sym.SOPform([‘a’, ‘b’], [

元記事を表示

[cx_Oracle入門](第18回) PL/SQL特有型のハンドリング

# 連載目次
[連載:cx_Oracle入門 目次](https://qiita.com/nakaie/items/df170c3fa6895cf1b44d)

# 検証環境
– Oracle Cloud利用
– Oracle Linux 7.7 (VM.Standard2.1)
– Python 3.8
– cx_Oracle 8.0
– Oracle Database 19.5 (ATP, 1OCPU)
– Oracle Instant Client 18.5

# はじめに
本記事は[JPOUG Advent Calendar 2020](https://adventar.org/calendars/5265)の12/3の記事となります。
PL/SQLはコレクション型やレコード型などの独自のデータ型が存在します。これらを引数や戻り値で使用するPL/SQLアプリケーションとPythonアプリケーションのやり取りをどのように行うかを解説します。

# PL/SQL表のハンドリング
### サンプルPL/SQLアプリケーション
“` SQL:sample18a.sql
create

元記事を表示

決定木・ランダムフォレスト・勾配ブースティング②(load_breast_cancer)

## ■ はじめに
[前回](https://qiita.com/zoo-machine_learning/items/a695a0f96c4643868c45)に引き続き、決定木・ランダムフォレスト・勾配ブースティングについてまとめていきます。

データは、scikit-learnに実装されている「load_brest_cancer」を使用します。

【対象とする読者の方】
・3つのモデリングにおける基礎を学びたい、復習したい方
・理論は詳しく分からないが、実装を見てイメージをつけたい方 など

【全体構成】
・モジュールの用意
・データの準備

1. 決定木
2. ランダムフォレスト
3. 勾配ブースティング

##■ モジュールの用意
最初に、必要なモジュールをインポートしておきます。

“`python

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import graphviz
import mglearn

from sklearn.datasets import

元記事を表示

PythonでQRコード読み取りをしてみる。 第二章・DBとの通信・登録

# 前回までのあらすじ
突如QRコードによる出退勤管理ソフトを作らなければならなくなったため、とりあえずQRコードを生成するソフト・QRコードを読み取るソフトを生成した。
# 今回やること
QRコード生成時にデータベースへ社員データを保存。QR読み取り時に社員データを照会・登録されていれば出退勤情報を設定する仕様に。
# まずQRコード生成側の手直しから
とりあえずまず出来上がったコードはこちら

“`python
import sys
import tkinter as tk
from tkinter import *
from tkinter import messagebox as mbox
import qrcode
from PIL import Image
import pymysql.cursors

i = 1

def connect():
name = inputbox.get()
empid = inbox.get()
other = ibox.get()

dbdata = pymysql.connect(
user =

元記事を表示

Python, Excel, ccxtを使って取引所で暗号資産を自動積立や自動取崩できる仕組みを作る

Python と Excel を用いて取引所上の暗号資産の管理を簡易的に行えるツール「crypto-asset-easy-management」を作ってみました。

毎日定時、毎週決まった曜日、毎月決まった日付での定期的な買い・売りを自動的に行い、その記録をエクセルに残していくことができるツールです。

およそ 1 週間程度で、ささっとつくったので、細かい箇所にはバグがあったりするかもしれません。もしご利用頂く場合は、自己責任の元で、お願いします。

ソースコードは GitHub を参照ください。

[https://github.com/YasunoriMATSUOKA/crypto-asset-easy-management](https://github.com/YasunoriMATSUOKA/crypto-asset-easy-management)

まずは簡単に使用方法を説明します。

## 環境構築

### git clone

レポジトリをクローンしてください。

公開鍵認証の方

“`sh
git clone git@github.com:YasunoriMAT

元記事を表示

git bashでpythonとpipを実行する方法

# git bashでPythonを実行する

py ファイル名.py

と記述するだけで実行できます

# git bashでpipを実行する

①本当にpipが入っていないか確かめる
py -m pip –version

入っていれば今入っているpipのバージョンが出てきます

②pipをインストールする
py get-pip.py

これでpipが使えるようになります

③pipを使う
py -m pip install パッケージ名

これでpipを実行できます

# 参考サイト
よりpipについて詳しい内容が載っています
https://pip.pypa.io/en/stable/

元記事を表示

日経225全銘柄の投資効率を検証

株式投資で資産運用をするとき,
できるだけ**少ない資金**で,できるだけ**小さいリスク**で,利益を出していきたいと投資の効率性を考えます.

投資の効率性はリターンとリスクによって決定されます.
したがって,効率的な投資戦略を考えるうえで,重要となるのは,
**投資によるリターン(株価収益率)**,**投資に伴うリスク(収益率の分散)**の理解と
**リスクに見合うリターン(シャープ・レシオ)**が得られているかです.

どの指標も高校数学までのレベルで,数理ファイナンスの世界では基礎的なものです.

本記事では,この3つの指標について理解し,日経225全銘柄について,投資の効率性を検証しました.

# 投資によるリターン(株価収益率)
まずはじめに,収益の効率を考えるうえで重要となるのは,投資金額に対する収益額の割合(収益率)です.

例えば,1株100円の株券Aを1株購入し,翌日に150円になったときに売却すれば,50円の収益を得ることができます.一方,1株1000円の株券Bを1株購入し,翌日に1050円になったときに売却すれば,株券Aと同じ1株当たり,50円の収益を得るこ

元記事を表示

秘密分散と触れ合おうの話

はじめまして、ゆうぴっぴ([@_yu_pippi_](https://twitter.com/_yu_pippi_))と申すものです
ITに全く秀でていないながらもお勉強中なのでアウトプットしてみようと思います
対戦よろしくお願いします

# そもそも秘密分散って?
– 数ある暗号技術の一つ
– 秘密情報を何人かのメンバーで分散して管理する方法の総称

秘密情報をバラしてみんなで管理してリスク減らそうぜって考えですね

具体的に、各メンバーに渡される分散された秘密情報のことを「**シェア**」、秘密情報からシェアを生成する人(端末)を「**ディーラー**」、シェアを受け取って管理する人を「**参加者**」といいます。
なんで最後だけ参加者なんでしょうね…自分の見立てではシェアとディーラーに対応する日本語がなかったのかな…と勝手に妄想してます

# 具体的なシナリオ
以下のようなシナリオが考えられます(全てフィクションです)

ある会社の社長は役員たちに告げました
しゃっちょ「これ、マジで**†トップシークレット†**なんで大切に保管しといてね あとよろしく」
役員たちはザワ

元記事を表示

ランキング学習2 実装編

[Aidemy](https://aidemy.net/) 2020/12/3
#はじめに
 こんにちは、んがょぺです!バリバリの文系ですが、AIの可能性に興味を持ったのがきっかけで、AI特化型スクール「Aidemy」に通い、勉強しています。ここで得られた知識を皆さんと共有したいと思い、Qiitaでまとめています。以前のまとめ記事も多くの方に読んでいただけてとても嬉しいです。ありがとうございます!
 今回は、ランキング学習の2つ目の投稿になります。どうぞよろしくお願いします。

*本記事は「Aidemy」での学習内容を「自分の言葉で」まとめたものになります。表現の間違いや勘違いを含む可能性があります。ご了承ください。

今回学ぶこと

#前準備
##データの準備
・今回は__LETORデータセット__を使っていく。これは、__ランキング学習__の際に使われるデータセットであり、Microsoftによって公開されている。
・LETORデータセットには様々な形式が用意されているが、今回は__教師あり学習用のデータ__を使用する。また、バージョンはMQ2008を使用する。このデータ

元記事を表示

PythonとOpenSCADで快適な3Dモデリング生活

# はじめに
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/320225/06751538-4a5f-a8b1-53bb-7b083123f707.png)

[OpenSCAD](https://www.openscad.org/)はFusion360,SketchUp,FreeCADなどの3DCADとは異なり,プログラムから3Dモデルを作成するソフトウェアです.そのためパラメトリックなモデリングが可能です.

OpenSCADについては次のリンクが参考になります.
– [OpenSCAD](https://www.openscad.org/)
– [OpenSCAD User Manual](https://en.wikibooks.org/wiki/OpenSCAD_User_Manual)
– [OpenSCADで始めるプログラマブルな3Dモデリング](https://qiita.com/iwtn/items/b984519ad24ac3c7d7d5)

OpenSCADではOp

元記事を表示

tiffファイルの処理に関連するnotebookメモ

・参考にしたkaggleのnotebook
https://www.kaggle.com/iafoss/panda-16x128x128-tiles
https://www.kaggle.com/haqishen/panda-inference-w-36-tiles-256
https://www.kaggle.com/thehemen/pytorch-transfer-learning-with-k-folds-by-drug-ids

・%は割ったあまり

・pad関数は、それぞれの次元の方向にふくらませるイメージ。正方形が拡大する、立方体が拡大するなど。
第2引数の配列のそれぞれの要素は、各次元をどれくらいの幅前後に膨らませるかを示している

“`python:pad関数
np.pad(np.random.randn(2,2),[(1,1),(1,1)],constant_values=3)
“`

・efficient net
https://qiita.com/Radley/items/e6cd148079468dbdb616

・画像、アノテーション、領域明示系のコンペ

元記事を表示

空いてる時間を気軽に共有出来るサービスを作ってみた

この記事は[CA21 Advent Calendar 2020](https://adventar.org/calendars/5308)に投稿する予定の記事です。

## 初めに
来年からインフラエンジニア(SRE)として働く予定のしがない学生です > [Twitter](https://twitter.com/_tetsuya28)
アドカレ3日目担当ということで今日はとあるサービスを勉強がてら作ってみたお話をしようと思います
あんまり1つずつの技術の深堀りはしないのでよろしくお願いします

## 空き時間共有サービス
という訳で早速今回作ってみたサービスの紹介から
題名の通りなんですが、ミーティングや遊びなどの色々な場面で日程調整をすることがあると思うんですが、僕はその時間を列挙すると言う作業へのだるさを感じていて以前はGoogleカレンダーと連携して空き時間をリスト化出来るサービスを使っていたのですがどうしてもちゃんとしているサービスが故に僕の目的を果たすのにはToo muchな部分や、逆に足りないなと思う部分がありました
具体的には

– 文字だけでは視認性が悪い

元記事を表示

決定性有限オートマトンで等価な状態を調べる

# 概要

Python使って、決定性有限オートマトン(以下DFA)の等価な状態を調べます。

# 前提

– pythonの基本文法知ってる人
– DFA知ってる人

# 環境

windows 10
python 3.8

automata-libライブラリを使用します。

> The library requires Python 3.5 or newer.

3.5以上が必要みたいですね。

“`
pip install automata-lib
“`

# プログラム本体

“`python
from automata.fa.dfa import DFA

SYMBOL_FORMAT = lambda s0, s1 : f'{s0},{s1}’

def directProduct(target0:DFA, target1:DFA, form = SYMBOL_FORMAT):
”’ 直積オートマトンを求める ”’
new_input_symbols : set = target0.input_symbols | target1.input_sym

元記事を表示

pandasで欠損したヘッダーの対処をする

# したいこと
以下のようなcsvデータを読み込んだ後にいろいろ整形したいとしても,ヘッダーの数と各行のデータ数が合わない場合,うまく整形ができませんでした.
このような場合の対処のベストプラクティスがわからなくて無理やり対処しました.もしあれば教えていただきたいです.

| id | mean | data| | | | |
| —- | —- | —- |—-|—-|—-|—-|
| 1 | 0.5 | 0.75 | 0.40 | 0.55 | 0.39 | … |
| 2 | 0.3 | 0.25 | 0.10 | 0.35 | 0.43 | … |
| … | … | … | … | … | … | … |

# 対処方法
誰もが思いつくことだと思うのですが,データはid列とmean列と複数のdata列が並べられているだけなので,headerを0に設定してnamesでヘッダーを無理やり上書きします.
そのために

元記事を表示

ランキング学習1 入門編

[Aidemy](https://aidemy.net/) 2020/12/2
#はじめに
 こんにちは、んがょぺです!バリバリの文系ですが、AIの可能性に興味を持ったのがきっかけで、AI特化型スクール「Aidemy」に通い、勉強しています。ここで得られた知識を皆さんと共有したいと思い、Qiitaでまとめています。以前のまとめ記事も多くの方に読んでいただけてとても嬉しいです。ありがとうございます!
 今回は、ランキング学習の一つ目の投稿になります。どうぞよろしくお願いします。

*本記事は「Aidemy」での学習内容を「自分の言葉で」まとめたものになります。表現の間違いや勘違いを含む可能性があります。ご了承ください。

今回学ぶこと
・ランキング学習とは
・特徴ベクトルの成分
・重みベクトルの学習
・ランキング学習の性能評価指標

#ランキング学習について
##ランキング学習とは
・__ランキング学習__とは、定義した重要度に基づいて__情報を並べる__ための機械学習の手法である。
・短な応用例としては、Google検索などの__検索エンジン__がある。あるキーワードを検索にかけた時、

元記事を表示

日経平均株価の30%は5銘柄で決まることを投資先選びに生かせるか?

<あらすじ>
日経平均株価の値動きは225銘柄すべての値動きが均等に影響しているわけではない。
2020年11月30日時点で値動きの約30%を上位5銘柄が占める。
値動きに各銘柄が与える影響「**寄与度**」と連動する度合「**相関**」の関係を調査する。

**仮説**:寄与度が高い銘柄ほど日経平均株価の値動きに連動する
**結論**:寄与度1位よりも相関が高い銘柄が複数存在する

#日経平均株価
日本の株式市場を代表する株価指標の1つ
世界で3番目の規模を誇る東京証券取引所、その1部に上場する企業から日本経済新聞社が選定した225銘柄の平均株価

近頃、至る所で日経平均株価の急騰が報道されています。

##日経平均続伸、29年半ぶりの高値
![nikkei225.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/906836/d9df18af-1b05-80cb-d1aa-66c2014ed49d.png)
>2020年11月26日に1991年4月以来およそ29年半ぶりの高値を更新した。
>新型コロナウ

元記事を表示

daemon=悪魔にはもうさせない

# 始めに
こんにちは、美味しいしです。
[python advent calender2020](https://qiita.com/advent-calendar/2020/python)に何とか間に合わせることができました!
[「私、デスクトップが汚い人とはお付き合いしたくないの」と言われないために](https://qiita.com/pn8128/items/58533224bb8c6d7ceea0)
という記事でpythonを使ったスクリーンショット自動化ライブラリを公開していますので、そちらもぜひご覧いただければと思います。

## そもそもdaemon化って?
デーモン化と読みます。悪魔化ではありません。daemonは英語で守護神をさし、守護神みたいにいつも動いてくれるものです。
メーラーデーモンとかよく聞きますよね。
でもこいつは、自前で作ろうとすると結構悪魔化します。
typoしてるだけのエラーに引っかかってサーバーを落としたり、存在しないurlを叩き続けてサーバーを落としたり、sudoじゃないと動かないコマンド関数を呼ぼうとしてそいつらもろともサーバーを落としたり

元記事を表示

肌の色を認識しよう!

# 理論
***この部分の内容は、[この論文](https://arxiv.org/ftp/arxiv/papers/1708/1708.02694.pdf)からまとめて翻訳されています。***

## 色空間

色空間は、色情報を3つまたは4つの異なる色成分として表す数学モデルです。皮膚の検出には、さまざまな色空間を利用できます。 それらは、RGBベースの色空間(RGB、正規化されたRGB)、色相ベースの色空間(HSI、HSV、およびHSL)、輝度ベースの色空間(YCBCr、YIQ、およびYUV)です。

### RGB(Red-Green-Blue:赤ー緑ー青)
RGB色空間は広く使用されており、通常、デジタル画像を保存および表現するためのデフォルトの色空間です。 原色である赤、緑、青の3つのコンポーネントで構成されています。 3つの基本色を混合することにより、任意の色を得ることができます。

これは、赤、緑、青の値の線形結合によって色が取得される付加的な色空間です。
3つのチャネルは、表面に当たる光の量によって相関しています。

![image.png](https://qii

元記事を表示

OTHERカテゴリの最新記事