Python関連のことを調べてみた2019年11月14日

Python関連のことを調べてみた2019年11月14日

IBM i にPythonの実行環境を作る

# IBM iでもyumでPythonをさくっとインストール

yumが使えるようになったIBM iはPythonに限らず、さまざまなオープンソースの実行環境を簡単に作れます。
事前にyumをインストールする手順はこちら([IBM i でyumを使う](https://qiita.com/sugata/items/29b646a946b0c11d290b))の記事を参考にしてください。

Python2はyum導入時に一緒にインストールされているので、ここから先はPython3の環境をセットアップしていきます。

Python3のインストールにはACSのGUIか、SSHのCLIが使えます。

## 方法1:Python3をACSのGUIでインストール

ACSを起動して[ツール]メニューの[オープン・ソース・パッケージ管理]を開きます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/524161/94a409ed-e530-bfcb-8d4f-006ff96d02c3.png)
Pyt

元記事を表示

Deep Learningで綺麗なウミウシを生成したい

# はじめに
Tensorflowを用いてGANの派生系であるDCGANを行った時の記録をメモ書きしたものです。あまり深いところまでは踏み込まず,ざっくり説明します。

タイトルにはウミウシを生成したい!と書いてあるんですが,最初はDCGANでポケモンを生成しようと思っていました。なのでとりあえず,ポケモン生成の試みから簡単に書いていこうかなと思います。

ちなみにウミウシはこんな生き物です。カラフルな種類が多くて綺麗
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/402915/6689bb9d-beba-5d2c-207c-1e05a1d1da70.png)![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/402915/772dfffd-9f25-0cb6-cc8b-6c8afcf79d80.png)![image.png](https://qiita-image-store.s3.ap-n

元記事を表示

Face++を用いて顔認識してみた

#実行環境
**Ubuntu 16.04**
**Python 3.7**
**opencv-python 4.1.0.25**
#概要
中国が開発したAPI「[Face++](https://www.faceplusplus.com/)」を用いて、顔認識をしてみる。
手順は以下の通り。

**①アカウント登録
②利用するAPIを取得
③デモの確認
④プログラム
⑤顔認識**

##**①アカウント登録**
まず、Face++を利用するためにアカウント登録する必要がある。
公式ページで登録を行い、自分の**API Key**と**API Secret**をゲットする。
これらが各APIを利用する際に必要となる。

作成したAPI KeyとAPI SecretはFace++の Apps/API Key で確認できる。
![a.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426498/dd6bed5c-a243-f1cb-7847-06b04322936f.png)

##**②利用するAPIを取得*

元記事を表示

ナップザック問題について

ナップザック問題についてお聞きしたいです。

ナップザック問題は品物と容量がそれぞれ決められており、ナップザックの容量いっぱいになるまで、どの品物を詰めるか(同じ品物は一回まで?)であると認識しております。

ナップザック問題において各品物の選択回数に上限を設け、その上限までは同じ品物を選択できるというように考えることは可能なのでしょうか。

初歩的な質問で申し訳ありませんが、ご教授いただけたら幸いです。
よろしくお願い致します。

元記事を表示

【Python】Anaconda上にOpenCVをインストールする方法【Windows】

#結論

2つの方法
Anaconda上で

“`
conda install -c conda-forge opencv
“`

pipで

“`
pip install opencv-python
pip install opencv-contrib-python
“`

元記事を表示

[python]逆順(降順)リストにbisectをする

bisectは降順リストに対応してないので作ってみた。
https://codeday.me/jp/qa/20190215/252510.html
もあるけど自力実装するのもなんだかなと

“`python
from bisect import*

cargo=[1,4,6,43,7,3,6,3,7,32]
length=len(cargo)
cargo_ascending =[1,3,3,4,6,6,7,7,32,43]
cargo_descending=[43,32,7,7,6,6,4,3,3,1]

#cargo_descending引数にとる必要ないんだけど一応
def bisect_reverse_right(cargo_descending,x,lb=0,ub=length):
return length-bisect_left(cargo_ascending,x,length-ub,length-lb)

def bisect_reverse_left(cargo_descending,x,lb=0,ub=length):
return length

元記事を表示

[Python]銀河鉄道の夜をWordCloudで可視化してみた!

# 初めに
* WordCloudを作ってみたくて作成しました。
* コードが誤っているかもしれません(すいません)

# 環境
* Python 3.7.3
* Jupyter Notebook
* Windows

# 流れ
__1.__ スクレイピングでテキストの抽出
__2.__ MeCabを使って単語を分ける
__3.__ WordCloudの作成

#1.スクレイピング
[こちら](“https://www.aozora.gr.jp/cards/000081/files/456_15050.html”)のサイトに「銀河鉄道の夜」が載っていたので、ここからテキストだけ抽出する

![キャプチャ14.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426482/ea39dc87-a13b-1c95-9644-6f96ea610573.png)

***

~~~html

~~~

見た感じだと、この’div’をより下の階層のテキストを抽出すれば

元記事を表示

psychopy.event.getKeys()で負の反応時間を得る

# はじめに

今回の記事では,タイトルの通り,`psychopy.event.getKeys()`を使う際に,**条件が揃うと**負の反応時間を取得できることを紹介します。基本的に負の反応時間は実験作成者が求めているものではないので,それが得られてしまって「バグかな。困ったな。」というときに参考になれば幸いです(自分が困ったことがある)。ポイントは,負の反応時間がほしくなかったら`event.clearEvents()`を忘れるなということです。

# 方法

キーを押してから反応時間計測用の`core.Clock`オブジェクト(例えば`stopwatch`という変数名)に対して`.reset()`を実行し,`psychopy.event.getKeys(timeStamped=stopwatch)`すると負の反応時間が得られます。実際に負の反応時間が得られるコードを見ていきましょう。

## コード例 1

“`python:get-neg-rt_1.py
from psychopy import visual, core, event

win = visual.Window(

元記事を表示

python リスト型操作関数による回転コマンドの作成

# まえがき
標準入出力とか意識してリスト型の操作でコマンド作成してみた。

# 参考文献

https://note.nkmk.me/python-unicode-escape/
https://qiita.com/motoki1990/items/d06fc7559546a8471392
https://qiita.com/masakielastic/items/2a04aee632c62536f82c
https://www.yoheim.net/blog.php?q=20150801
https://docs.python.org/ja/3/tutorial/datastructures.html

# 環境

“`bash
$python –version
Python 3.7.4
$bash –version
GNU bash, バージョン 5.0.0(1)-release (x86_64-pc-linux-gnu)
Copyright (C) 2019 Free Software Foundation, Inc.
ライセンス GPLv3+: GNU GPL バージョ

元記事を表示

Sudachipyの学習済みword2vecを低メモリ環境で使用する

#はじめに
日本語の言語処理を行う際に学習済みword2vecを利用したい場合,
[いますぐ使える単語埋め込みベクトルのリスト](https://qiita.com/Hironsan/items/8f7d35f0a36e0f99752c)
のように学習済みデータを入手しgensimを用いるのが簡単だった。
しかし,多くのものはwikipediaなどから学習されており単語数が50000程度だったりして,任意の文章を分かち書きしてベクトル化しようとしても,未知語ばっかりで使い物にならなかったりする。

日本語形態素解析といえばmecabだと思っていたが,最近はワークスアプリケーションが提供しているSudachiというのもある。
さらにSudachiで分かち書き・学習したWord2Vecモデルも提供されており,100 億語規模の国語研日本語ウェブコーパスから単語数360万の学習済みデータとなっている。
[Sudachiベースの学習済みWord2Vecモデルを使う](https://ohke.hateblo.jp/entry/2019/06/01/120000)
かなり単語数が多いため使い勝

元記事を表示

ビギナーが「エキスパートのための TensorFlow 2.0 入門」読んでみた

# やること:point_up:
[tensorflow2.0のチュートリアル](https://www.tensorflow.org/tutorials/quickstart/advanced)を読む。
チュートリアルでよく分からなかったものを調べて補足して備忘録としたいと思います。

# 背景
tensorflowを学ぼうとしていたらいつの間にか主流が2.0に移っていた
tensorflow1系すら知らないけど,今やるなら2系から始めるのが合理的かなとtensorflow2のチュートリアルを読み始める

# 環境
windows10
anacondaの仮想環境で行いました
環境構築は以下

“`
#python3.6までしか対応してないらしいのでバージョンは3.6
conda create -n tensorflow2.0 python=3.6 anaconda
conda install tensorflow==2.0.0
conda install jupyter
“`

# 解説
はじめに、TensorFlowライブラリをプログラムにインポートします。

“`
fro

元記事を表示

Python初心者(中学生)のコードをガチでリファクタしてみた

中学生の書いたPythonプログラム。はじめてにしてはよくできてました。
最初は、どんな書き方でも動けばよい。だと思います。

でも難しいプログラムを作れるようになるためには、頭の中を整理して、分かりやすくプログラムにする事も大切です。このプログラムを例題に、書き直してみました。

# オリジナルプログラム

きれいな図形描けましたねぇ。
カラフルな色合いの出し方を工夫していて素晴らしいです。
if文の条件分けや、計算式よく考えて作りましたね。

“`python
number = int(input(“いくつの円を書きますか?”))
R = 1.0
G = 0.0
B = 0.0
color = 0
from turtle import *
delay(5)
shape(“turtle”)
for i in range(number):
color = int(360/number*i)
if color <= 60: R = 1.0 G = color/60 B = 0.0 elif color <= 120

元記事を表示

pyenv globalの解除方法

## はじめに
pyenvでlocalを解除したい時は.python-versionを削除したり、あとは[こちらの記事](https://qiita.com/morrr/items/cdd7d162a882ad2b2a59)のように–unsetを指定すればいい
しかしglobalを解除したいときの方法がわからなかったのでメモを

## 公式ソース
このあたりが関係ありそう
・[pyenv-global](https://github.com/pyenv/pyenv/blob/master/libexec/pyenv-global)
・[pyenv-version-file-write](https://github.com/pyenv/pyenv/blob/master/libexec/pyenv-version-file-write)

なんとなく、pyenv-globalからpyenv-version-file-writeを呼び出してPYENV_ROOTの下にversionというファイルを作っているような感じ

## 確認してみる
※私は.pyenvをPYENV_ROOTに設定し

元記事を表示

Python初学者がAPIを使ってGoogle検索結果を取得してみた話

##概要
Python歴2週間の初学者ですが、ゼミの研究のためにGoogleの検索結果を取得したいと思い、こちらの記事「[Custom Search APIを使ってGoogle検索結果を取得する](https://qiita.com/zak_y/items/42ca0f1ea14f7046108c#1-api%E3%82%AD%E3%83%BC%E3%81%AE%E5%8F%96%E5%BE%97)」を参考にチャレンジしました。

参考記事と重複しますが、どのような手順で作ったか公開したいと思います。

**環境**
Windows10
python3.7
Anaconda Navigator

**目標物**
ゼミの研究テーマ「訪日外客数の増減に影響を与える決定要因は何か」の先行研究を取得
→取得した記事のタイトルやURLを一覧にしたファイルを作成

##手順
1. APIキーを取得する
2. Custom Search APIの有効化
3. Custom Search Engineの取得
4. ライブラリのインストール
5. APIでGoogle検索結果の取得&jsonファイルで保

元記事を表示

人感センサーモジュールで人を検知

#きっかけ

僕「人が近くを通ったら何か動く仕掛けがあると面白いな」
僕「人感センサ結構安く売ってるやん」

#用意したもの

・RaspberryPi
・人感センサー
・ジャンパワイヤ
・ブレッドボード
・LED

人感センサはこんな感じ

IMG_3180.jpg IMG_3179.jpg

カバーが取れるみたい(あんまり取らないほうがいいと思うけど)
秋葉原の千石電商で800円ぐらいで売っていた
(Amazonだともっと安い

元記事を表示

AWSで近くの避難場所を通知してくれるLinebotを作ってみた

#はじめに

 本記事は[「あなたを死なせないためのプログラミング」](https://qiita.com/yossymura/items/b19d08235bdb44f06ae8
)に感化され,自分もほぼ同じシステムをバックエンドとしてAWSを使って構築することを目的にしました.システムの詳細な内容は元記事も参考にしてください.

 また私も災害対策や避難誘導の一助になるようなシステムを作りたいと思い,「ドローンを活用した災害避難勧告システム」や「スマートスピーカーを利用した避難勧告システム」についての記事も公開を予定していますのでそれも合わせて見ていただければと思います.

# 対象読者
– 実際に動くシステムを作ることを目的にしていて,作って学びたい方
– LINE botの開発がしたい方
– バックエンドとしてAWSを使いたいAWS†初学者†の方

# 製作物
u-blox F9P から相対平面座標を受け取る

前回の記事(https://qiita.com/m_take/items/5dfe43f9c145bbec0e21)
では u-blox ZED-F9P(以下F9P)内部でRTK演算を行い、NMEAから平面座標へはラズパイ内でしていましたが回りくどいやり方が気になってました。
そこでF9P内部で平面座標まで変換し出力されたバイナリデータをpythonを使って解読できたのでその紹介です
#参考資料
まずF9Pのプロトコル資料を読みます
https://www.u-blox.com/sites/default/files/u-blox_ZED-F9P_InterfaceDescription_%28UBX-18010854%29.pdf
(こちらはM8Pの資料)
https://www.u-blox.com/sites/default/files/products/documents/u-blox8-M8_ReceiverDescrProtSpec_(UBX-13003221)_Public.pdf  

バイナリデータの解読方法についてはこちらを参考にしました(arduino用)
htt

元記事を表示

[ゼロから作るDeep Learning]ニューラルネットワークの主なパラメータ更新手法

# はじめに
この記事は**ゼロから作るディープラーニング 7章学習に関するテクニック**を自分なりに理解して分かりやすくアウトプットしたものです。
文系の自分でも理解することが出来たので、気持ちを楽にして読んでいただけたら幸いです。
また、本書を学習する際に参考にしていただけたらもっと嬉しいです。

##SGD
SGDは、今までのように勾配を求めたら学習係数をかけて現在のパラメータと引き算をする事でパラメータを更新する手法です。
スクリーンショット 2019-11-13 15.30.35.png
この方法は単純で実装もしやすいのですが、勾配が示す向き=正確な最小値への方向ではないので、損失関数の最小値となるパラメータの地点までギザギザと効率の悪い探索をしてしまうのが弱点です。

##Momentum
速度とい

元記事を表示

[Python3] 関数のコードオブジェクトを書き換える

# はじめに

Pythonでは、メソッドやモジュール内の関数を上書きするのは比較的簡単です。Qiitaにもいくつか記事があります。

– [Python でライブラリ関数のオーバーライド](https://qiita.com/macinjoke/items/797da46d51a17ae8d89e)
– [Pythonでライブラリの処理を上書きする](https://qiita.com/Asayu123/items/8d8da9911dd0c3296a81)

これらの手法は、以下のように属性アクセスをいじっているだけです。
オブジェクトとしての関数を弄っているわけではありません。

“`python
class SomeClass:
def original_method(self):
print(‘call original_method’)

def new_method(self):
print(‘call new_method’)

some_instance1 = SomeClass()
some_instance2 = SomeClas

元記事を表示

ポアンカレの円板をPythonで描画する

 ネットにあるかと思って探してみたけどなかったので自分で書く。

#ポアンカレの円板とは

 エッシャーのアレで有名なやつです。

 これから説明が長くなるので、Pythonで実装したものとソースコードが以下になります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/288125/391adda3-e68a-d570-c1b8-fc7a84f0cc4f.png)

“`python
import numpy as np
import matplotlib.pyplot as plt

theta = np.linspace(0,2*np.pi,100)
colorlist = [“r”,”g”,”b”,”c”,”m”,”y”]

t = list(range(0,6))
for n in t:
n2 = np.power(2,n)
for phi in np.linspace(0,2*np.pi,2*n2+1):
x = np.cos(theta)*n

元記事を表示

OTHERカテゴリの最新記事