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

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

COVID-19チャレンジ(フェーズ1)のデータの使い方

次で公開されているデータを、Google Colabotary で使う方法です。
[COVID-19チャレンジ(フェーズ1)](https://signate.jp/competitions/260)

次のような結果を得ます。
![signate_apr12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/179446/c04e0e40-1d9e-4f49-b365-3b5c3b5efe6c.png)

データの取得

“`py
!wget –no-check-certificate –output-document=data.csv ‘https://docs.google.com/spreadsheets/d/10MFfRQTblbOpuvOs_yjIYgntpMGBg592dL8veXoPpp4/export?gid=0&format=csv’
“`

取得したデータの確認

>“`py
!more data.csv
“`

>“`py
df.shape
“`

栃木県のデータの表

元記事を表示

SynologyでSynology(DS120j)でyoutube-dlをタスクスケジューラーから起動させる

#コマンドを実行(ユーザー指定のスクリプト)のところが大事

“`
cd /var/services/homes/名前/python
export PATH=$PATH:/var/services/homes/名前/.local/bin
export PATH=/volume1/@appstore/ffmpeg/bin:$PATH
export PATH=$PATH:/var/services/homes/名前/AtomicParsley-source-0.9.0/AtomicParsley-source-0.9.0
PYTHONIOENCODING=utf-8 python3 test.py&>/var/services/homes/名前/python/er.txt
“`
cd使ってpyがある階層まで行く
youtube-dl,ffmpeg,AtomicParsleyのあるフォルダーに向けてパスを通す(ffmpegは最初に来るように気をつける)
そして日本語などが出てきたときエラーが起こるためPYTHONIOENCODING=utf-8 python3 test.pyのように起動

元記事を表示

pythonで某Authenticator的なツールを作ってみた【1回目】

2次開発的な。自主学習。
g−−ぇAuthenticator的なものをちょっとpythonで作ってみようと思って
とりあえず、作った。
これまた1回目

次は、ソースに直接、鍵とかユーザー名を入れるんじゃなくて
ちゃんとシステムチックな感じに整えていきます。

“`python
#!/usr/bin/env python
# -*- coding: utf-8 -*-

import tkinter as tk
import pyotp

totp = pyotp.TOTP(‘ZAQWSXCDERFVBGT’) #鍵的な値
totp.now()

# tkinterでwindowの作成とタイトルを作る
# windowサイズの指定
root = tk.Tk()
root.title(u”g_authentication_tool”)
root.geometry(“300×200”)

# 表示用ラベル
Static1 = tk.Label(text=u’user1′)
Static1.pack(side=’left’)

Static2 = tk.Label(text=totp.

元記事を表示

PEP 585 (Type Hinting Generics In Standard Collections) を読んだよメモ

`__origin__` という属性がどこからやってきたのを調べていたところ、 PEP 585 — Type Hinting Generics In Standard Collections という PEP を見つけたので、本来の目的を忘れて流し読みしてました。まだ Draft ステータスですので、今後採用されるかどうかはわかりませんが、自分の理解をメモに残しておきます。

## 概要

* これまでの型アノテーションでは、コレクションを表現するのに専用の型を使っていた (`typing.List` や `typing.Dict` など)
* コレクションの実装クラスと型クラスを統合し、標準のコレクションクラス(`list` や `dict` など)で型アノテーションできるようにしよう
* いずれ `typing` 配下のジェネリックコレクション型は廃止したい

## 用語

* Generic
* パラメータ化可能な型。一般的にはコンテナを指す。
* 別名 parametric type、generic type とも。
* 例: `dict`
* para

元記事を表示

Python + opencv + webカメラで非写実的レンダリング試してみた

# はじめに
opencvのライブラリに用意されている非写実的レンダリング(ノンフォトリアリスティックレンダリング:以下NPR)を試してみました。
NPRは入力された画像や映像に対して手書きの絵画のような非写実的表現を目指します。下記で実際の変換結果を参考にイメージしてください。

こちらのサイトを参考に実装しました。
[OpenCV Non-Photorealistic Rendering](https://docs.opencv.org/master/df/dac/group__photo__render.html)
[Learn OpenCV](https://www.learnopencv.com/non-photorealistic-rendering-using-opencv-python-c/)
# 結果
先にNPRの実行結果を載せておきます。
入力は[こちら](https://www.pakutaso.com/20200336089post-26662.html)の雪桜

![httpswww.pakutaso.com20200336089post-26662.htm

元記事を表示

楽天RMSのAPIをpythonから利用する urllib.request版

楽天RMSのAPI利用についてはPHPの記事がたくさんありますが、
pythonの記事はまだまだ少ないので投稿します。
##楽天RMSのAPIをpythonから利用する urllib.request版

以下のAPIをpythonから利用します。
– 楽天ペイ受注API(RakutenPayOrderAPI)
– 受注検索 searchOrder
このAPIは、指定した期間中の受注番号を返してくれます。

“`python:RMSapi.py
import base64
import json
import urllib.request
import datetime
from pytz import timezone

# ■■■■■■■■ 認証情報 ■■■■■■■■■■
serviceSecret=b”ご自身のサービスシークレット”
licenseKey=b”ご自身のライセンスキー”
headers = {
‘Authorization’ : b”ESA ” + base64.b64encode(serviceSecret + b’:’ +licenseKey),

元記事を表示

PythonでMongoDBに接続して、条件を指定して、DataFrameに格納

##PythonでMongoDBに接続して、条件を指定して、DataFrameに格納します。

“`python:connect.py
import pymongo
import pandas as pd

client = pymongo.MongoClient(‘localhost’, 27017)#localを想定
db = client[‘#db名’]
co = db[‘#コレクション名’]

query = { “orderDatetime” : { “$gte” : “2019-11-01T00:00:00+09:00″ } }
#検索条件
#keyはorderDatetime
#valueは ”2019-11-01T00:00:00+09:00” 以上(“$gte”)

df = pd.DataFrame(co.find(query))

元記事を表示

yukicoder contest 243 参戦記

# yukicoder contest 243 参戦記

## [A 1020 Reverse](https://yukicoder.me/problems/no/1020)

手で実際にやってみると K番目からN番目までが順に並んだ後に1番目からK-1番目が順に並んだり、逆に並んだりすることがわかります. 1番目からK-1番目の並びが順になるか逆順になるかは当然操作回数が奇数か偶数かに依存します. よって以下のようなコードで解けました.

“`python
N, K = map(int, input().split())
S = input()

if (N – K) % 2 == 0:
print(S[K-1:] + S[:K-1][::-1])
else:
print(S[K-1:] + S[:K-1])
“`

## [B 1021 Children in Classrooms](https://yukicoder.me/problems/no/1021)

ポインタを移動しながら配列を書き換えて、ポインタの情報をもとに結果を出力することも考えましたが、や

元記事を表示

[matplotlib] Jリーグ2019年の順位表を色々グラフ化してみた ~その1~

# はじめに
## 記事の概要
この記事では、Jリーグの2019年の順位表を使って、matplotlibの使い方を学びながら、サッカーにおいて順位と強く相関するものは何なのかを考察していきます。
自分の学習メモ代わりでもあるので、読みにくいかもしれませんがご容赦ください。
## 目的
・matplotlibの使い方に慣れる。
・DataFrameを扱えるようになる。
・サッカーの順位において、大事な要素を見つける。
# コードと解説
## 前提
– 開発環境
– Anaconda
– Python3
– Juptyer-notebook

## 流れ
1. Jリーグのデータサイトの順位表をチェック
2. 2つの表を結合
3. とりあえず勝ち点をプロットしてみる
4. 総得点と総失点の関係をグラフに
5. 勝・分・敗の割合を見てみる
6. 各要素の相関を見てみる
## コード
まずjリーグサイトから表を読み込み、整形。

“`Python3
import pandas as pd

url_ranking = ‘https://data.j-league.or.jp/SFR

元記事を表示

Arduinoで照度計を作成し、ログをCSV形式で保存する

##概要
Arduinoを使って照度計を作成し、そこで取れた照度のログをPythonで受け取ってPCにCSV形式で保存するコードを実装した.

##Arduinoで照度計を作成
まずは照度計を作る部分について

使った材料は主に以下の4つ
– Arduino Uno
– ブレッドボード
– フォトトランジスタ(光のセンサー)
– 220Ωの抵抗×1

配線の概要は下の図のようになる.
照度計によって流れる電流の変化をA0端子でAnalogReadしている.
スクリーンショット 2020-04-10 20.35.03.png

以下がArduinoに実装したコードになる.

“`illuminator.ino
int sensorValue = 0;

void setup() {
// put your se

元記事を表示

pythonで文字列を自然順(番号が小さい順)ソート

`sorted`は辞書順になってしまい、数値が小さい順に並ばない。
正規表現を使えば簡単に自然順にできるけど、毎回書くのが面倒なのでメモ。

### 文字列の場合
“`python3
l = [‘1′, ’10’, ‘2’]

import re
sorted(l, key=lambda x: tuple(map(int, re.findall(r’\d+’, x))))
“`

### 文字列じゃない場合(pathlib.Pathなど)
“`python3
from pathlib import Path
l = [Path(‘1′), Path(’10’), Path(‘2′)]

import re
sorted(l, key=lambda x: tuple(map(int, re.findall(r’\d+’, str(x)))))
“`

### ライブラリを使う場合
[natsort](https://pypi.org/project/natsort/)というのがある。

元記事を表示

PythonでcURL

標準ライブラリのurllibか、サードパーティライブラリのRequestsを使う方法があるが、urllibの方でやってみる。

# GET

“`python:get.py
import urllib.request
import json

url = ‘https://petstore.swagger.io/v2/store/inventory’

try:
with urllib.request.urlopen(url) as response:
body = json.loads(response.read())
headers = response.getheaders()
status = response.getcode()

print(headers)
print(status)
print(body)

except urllib.error.URLError as e:
print(e.reason)
“`

“`
>python get.py

元記事を表示

pythonでgraphを扱うライブラリnetworkxを使う(その1)

pythonでGraphまわりを扱うために,networkxをdockerで使えるようにした時のメモ。

# 行ったこと
1. Dockerfileを使ってpullしたimageをカスタマイズ
2. dockerからmatplotlibの表示をpop up

### ホストの環境
“`souece:OS
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION=”Ubuntu 16.04.6 LTS”
“`
### dockerの環境
[こちらで構築した環境](https://qiita.com/iwankoTG/items/05b39c9c42ad278917a0)を使っています。

# 1. Dockerfileを使ってpullしたimageをカスタマイズ
dockerのimageは必要なものをnvidia-dockerからpullしてきて使っていたが、graphを扱うnetworkxなどをinstallしたものが必

元記事を表示

windows10 64bitのAnacondaにCaboChaを入れる

# 概要
Windows10 64bitのAnaconda環境にCaboChaを入れるためには
WindowsにMeCabとCaboChaをインストールして
管理者権限のAnaconda Promptで以下のコマンドを打つ

“`
set CONDA_FORCE_32BIT=1
conda create -n NLP -y python=3.6.5 pip
activate NLP
pip install mecab cabocha-python
set CONDA_FORCE_32BIT=
“`

# 背景
MeCabがpipでしか入らなかったりCaboChaが32bitでしか入らなかったりする件の備忘録

# 方法
– https://taku910.github.io/mecab/#download でmecab-0.996.exeをDL&インストール
– https://drive.google.com/drive/folders/0B4y35FiV1wh7cGRCUUJHVTNJRnM でcabocha-0.69.exeをDL&インストール

管理者権限で起動したAnac

元記事を表示

Splunkで日本のCOVID19感染状況を表示する(改訂2版)

[Choropleth Mapで日本のCOVID19感染状況を表示する(改訂版)](https://qiita.com/toshikawa/items/d7c6f43016fd440508ed)ではindexに読み込んでいた。
データが一括更新なので、[Splunk本家](https://covid-19.splunkforgood.com/coronavirus__covid_19_)と同様にCSV読み込みに変更する

表示データは`2020/4/8`ダッシュボードのみ`2020/4/10`

なお

– [NipponMap: Japanese Map Data and Functions](https://cran.r-project.org/web/packages/NipponMap/index.html)
– [東洋経済Online新型コロナウイルス国内感染の状況](https://toyokeizai.net/sp/visual/tko/covid19/)
– [NHK 新型コロナウイルス 特設サイト](https://www3.nhk.or.jp/news/specia

元記事を表示

眠れない夜のために〜延々と2の冪乗を表示し続けるプログラム〜two〜

common lisp で書かれています。
ubuntuでの、CLISPのインストール方法は以下の通り。

“`
sudo apt-get install clisp
“`
TWO:コード

“`
(defun two () (do ((i 1 (* i 2))) (() ()) (format t “~A ~%” i)))
“`
python版

“`two.py
#!/usr/bin/python3
i=1
while True:
i=i*2
print(i)
“`

元記事を表示

眠れない夜のために(2)〜延々と羊を数え続ける関数〜sheeps.

眠れない夜にこのプログラムを実行して、延々と画面を見続けましょう。
多倍長数なので、オーバーフローするまで寝ないで見続けると、多分、人間は死にます。

“`
(defun sheeps () (do ((i 1 (+ i 1))) (() ()) (format t “羊が~A匹~%” i)))
“`

clispのインストール(Ubuntu,Debian)

“`
sudo apt-get install clisp
“`
python版

“`sheeps.py
#!/usr/bin/python3
print (“1 sheep.”)
i=2
while True:
print(i,”sheeps.”)
i+=1
“`

元記事を表示

Python No.01

# 任意回数inputをリストに入れる
“`sumple.py
test = list(map(int, input().split()))
“`

### 関連
ABC 081 B – Shift Only

元記事を表示

茶色コーダーが青Diff「いろはちゃんとマス目」を解いてみた!

#茶色コーダーが青Diff解いてみました!
AtCoderのレートが539な私ですが、教えてもらいながら青Diffの問題を解くことができたので、記事を書いてみました!
優しく丁寧に説明しようと思っているので、まどろっこしかったらごめんなさい>< 今回解いた問題は、[AtCoder Beginner Contest 042D-いろはちゃんとマス目](https://atcoder.jp/contests/abc042/tasks/arc058_b)です。 [私の提出リンク](https://atcoder.jp/contests/abc042/submissions/11674722) #最初の発想 まず、この問題を見た時に「とあるマスからとあるマスまでの最短経路の総数を求める」という問題に見えました。 高校数学の[組み合わせのところで出てきた問題](https://mathtrain.jp/dp)に似ているので、コンビネーションを使うのではないかと考えました。 (リンク先の問題では、コンビネーションは使っていませんが、模範解答の数式(階乗を階乗で割っているやつ)を式変形するとコン

元記事を表示

2020/04現在 僕が思う最適なmac + python + tensorflow 環境構築

# 環境
macOS Catalina
python 3.7.5
pyenv 1.2.18
tensorflow 2.1.0

※本記事は、macにpython3とtensorflowを入れるだけの記事です。
editorを使った環境構築の話などは一切含まないのでご了承ください:clap:

# python環境 全然上手くいかない
もう嫌というほど、作っては壊しを繰り返しました。
そこで得た知見をシェアさせていただきます。

# まずリセットしましょう
とにかくGitから取ってくる方法やダウンロードで展開する方法、brewなど色々な方法がインターネットに転がっていますから混乱します。
とりあえず落ち着いて酒飲もや。ではなく、uninstallしましょう。

僕は、こちらの記事が参考になりました。:clap:

すべてリセットしたら、以下の考えで構築します。
– 面倒くさいですが、環境ごとに `pip install ●●` する
– 要らなくなったら壊しやすい
– tenso

元記事を表示

OTHERカテゴリの最新記事