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

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

pandas_datareaderのインストール方法と使い方について【Python】

この記事では、
pandas_datareaderのインストール方法と使い方について
を書いていきます。

##pandas_datareaderとは
pandas_datareaderはPythonのライブラリで、経済データや金融商品の価格データが取ることができます。

pandasという名が入っているので、pandasと共に入ってそうですが(昔は入っていたような)、別モンになっています。Anacondaでも入っておらず、インストールしないといけません。
Pythonのライブラリpandas_datareaderでデータを取得する – Pythonと本と子供と雑談と

ライブラリ↓
pandas-datareader — pandas-datareader 0.9.0rc1+2.g

元記事を表示

【Python】1つ上の階層のモジュールをimport

mydir
└ parent.py
  └ child.py

といったフォルダ構造にて,child.pyからparent.pyをimportする方法

“`child.py

import sys
import pathlib

# ひとつ上の階層の絶対パスを取得
parent_dir = str(pathlib.Path(__file__).parent.parent.resolve())

# モジュール検索パスに,ひとつ上の階層の絶対パスを追加
sys.path.append(parent_dir)

import parent

“`

元記事を表示

Azure VM の Ubuntu 20.04(LTS) で Python3 と MongoDB を利用する(ホロライブの動画配信予定を収集 その2の続き)

## はじめに

前回([https://qiita.com/kerobot/items/fa728f665d559b969e1c]())は、ホロライブの配信予定や動画情報をホロジュールと Youtube から収集した情報を MongoDB に登録できるようにしました。
今回は、一通りの仕組みを Azure VM の Ubuntu に配置して定期的に実行されるようにしてみます。

これまで Windows 10 で構築していた仕組み、Poetry + pyenv + Python3 + WebDriver + MongoDB を Azure VM の Ubuntu に導入して、cron で定期的に実行します。

## 最終的にやりたいこと

ここ最近、毎日のように閲覧している バーチャル YouTuber プロダクション「ホロライブ」などの、動画配信予定を定期的にデータベースに格納し、それを Web API で参照して閲覧する Android アプリを作りたい。

1. 動画配信予定を収集するためのプログラムの作成(完了)
2. 収集した動画配信予定を格納するためのデータベースの作成と

元記事を表示

Pipenvでpkg_resources.VersionConflictが出た。

# 動作環境
– WSL Ubuntu 18.04
– pipenv 2020.6.2
– python 3.7.4

# 起きたこと
`pipenv install`したときにパッケージのインストールはできるものの`Pipfile.lock`が更新されなくなった。

“`
(project) user@LAPTOP:~/project$ pipenv update
Running $ pipenv lock then $ pipenv sync.
Locking [dev-packages] dependencies…
Building requirements…
Resolving dependencies…
✘ Locking Failed!
Traceback (most recent call last):
File “/home/user/.pyenv/versions/3.7.4/lib/python3.7/site-packages/pipenv/resolver.py”, line 807, in
main()
File

元記事を表示

Redis の WebAPI (Bottle)

こちらで定めた仕様を満たすサーバーサイドのプログラムです。
[Redis の WebAPI を作成](https://qiita.com/ekzemplaro/items/1746b31beef382023f2d)

“`py:bottle_redis.py
#! /usr/bin/python
#
# bottle_redis.py
#
# Nov/13/2020
#
# ——————————————————–
from bottle import route, run, post, request
import redis
import json
import sys
# ——————————————————–
@post(‘/read’)
def read():
key = request.forms.get(‘key’)

json_str = “”
try:
rr = redis.Redis(host=’lo

元記事を表示

ロケーション名を入力すると、施設の種類や住所etc.を返すGeocodingツール

#__(コード)__ *Python3*

“`Python3:loc_geocoding.py
# coding: utf-8
import time, argparse, datetime
from pprint import pprint
import pandas as pd
import numpy as np

# コマンドライン引数を受け取る
parser = argparse.ArgumentParser()

# コマンドライン引数を1つだけ受け取る
parser.add_argument(‘-loc’, ‘–location_name’, default=’東京駅’, help=’興味のある場所または施設の名称を入力して下さい。’)
args = parser.parse_args()
location = str(args.location_name)

print(“\n\n入力されたロケーション名: “, args.location_name, “\n”)

import geocoder

data = geocoder.osm(location,

元記事を表示

【Python】iTunesで聞いている曲のジャケットをSlackのプロフィール画像にする

## 概要

会社のSlackのプロフィール画像いつも決め兼ねていて,
なんか面白いことできないかなぁと思った時に
よく作業とか集中してやるときにMacでAppleMusicで音楽聞いているので
そのジャケットの画像をプロフィール画像にできたら面白そう!って思って始めたのがことの発端
できればステータスでNowPlaying
{曲名}/{アーティスト名}とかできたら
会社の人に「この人この曲聞くんだ!」とか「こんなアーティスト聞くんだ!」ってなって話のネタになりそうだなぁ

## 環境

python3系
Slackアカウント
iTunes

## iTunes聞いてる曲の情報を取得する

こちらに関しては以前書いた記事を参考に環境構築してください
[【Python】iTunesで聞いてる曲の情報を取得する](https://qiita.com/da-sugi/items/976fe8b8f9b841ed225f)

環境構築できたら追加で画像を一時的に保存するディレクトリを作成してください

“`bash
$ mkdir downloads
“`
## 大まかなシステム概要

元記事を表示

djangoのインストール場所

djangoで開発してるけど、djangoそのものはどこにインストールされてるの?
と思ったので、調べてみました。

## djangoの場所
pythonの対話モードで確認できます。

“`python
>>> import django
>>> django

“`

下記ディレクトリにインストールされてる事が確認できます。
`/home/sampleuser/application/venv/lib/python3.7/site-packages/django/`

## 参考URL
https://stackoverflow.com/questions/7037468/where-is-my-django-installation

元記事を表示

DTMの標高値をグラフで表示してみた

#DTMとは
Digital Terrain Mapの略。今回は火星探査機MROに搭載されたHiRISEというカメラが取得したDEMデータを使う。

#HiRISEとは
MROの搭載カメラの一つ。めちゃくちゃ高解像度。
![gahag-0040798691.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/699389/337de9b6-a20d-5312-1cfc-02842bb790d8.jpeg)
上の画像もその一つらしい。(これは擬似カラー画像)

#手順
ダウンロード:[HiRISE アーカイブサイト](https://hirise-pds.lpl.arizona.edu/PDS/DTM/)
ESPとかPSPとかはカメラが画像を取得した時のmodeになっている。(どれでもいい)

今回はPythonで読んでいきます。
適当にgdalとか使って読み込んでください。(飛ばします。)

“`python:dtm.py
xx=int(len(data_array))+1
yy=int(len(data_

元記事を表示

VSCodeで手軽にpythonを勉強したい人のための環境構築(for Mac)

## はじめに
「さぁ、Pythonの勉強をしよう」
と、思い立って環境を作るところから始めようと調べ始めると、
「Homebrewが…」「Pathを確認して…」「デフォルトのバージョンが…」などと
初心者の心を折ろうとする分岐がいくつも存在すると感じるのは私だけでしょうか?

色々やり方はあるかと思いますが、
私はシンプルにDockerとVisual Studio Code(以下、VSCode)の拡張機能を使って環境を作るのが
面倒なく楽なのではないかと感じましたので、それを記録として残しておきます。

もっとオススメがあるよ、という方はコメントいただければ幸いです。

## インストール
それぞれ公式サイトよりダウンロード、インストールします。

[Docker Desktop](https://www.docker.com/get-started)

[Visual Studio Code](https://code.visualstudio.com/)

Dockerは仮想マシンを作ることが出来るサービスです。
こちらは初めて使用する際はアカウントを作る必要があります。

VS

元記事を表示

日本全国の郵便番号⇔住所変換を行うPythonライブラリ『Jusho』

# 使用方法
`$ pip install jusho`
でインストール。 [github](https://github.com/nagataaaas/Jusho)

“`python
from jusho import Jusho

postman = Jusho()

“”” 郵便番号から取得”””
print(postman.from_postal_code(‘160-0021’)) # ‘1600021’, ‘〒1600021’ なども有効
# 〒160-0021, 東京都 新宿区 歌舞伎町(TOKYO TO SHINJUKU KU KABUKICHO)

kabukicho = postman.from_postal_code(‘160-0021’)
print(kabukicho.hyphen_postal, kabukicho.prefecture_kanji, kabukicho.city_kanji, kabukicho.town_area_kanji)
# 160-0021 東京都 新宿区 歌舞伎町
“”” 漢字表記のほかに、カタカナ表記、ヘボン式

元記事を表示

python3: bottle の使い方 (その 3)

template の使い方です。

フォルダー構造

“`text
$ tree
.
├── template.py
└── views
└── sample.html
“`

“`py:template.py
#! /usr/bin/python
#
# template.py
#
# Nov/12/2020
#
# ——————————————————————
from bottle import run, route, template

# ——————————————————————
@route(“/”)
def index():
username = ‘夏目漱石’
return template(‘sample’, username=username)
# —————————————————-

元記事を表示

Socketを使ったHTTPサーバーとHTTPクライアント(+Webブラウザー) – Python3

![Untitled.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/448552/ec511fb0-bf4a-8585-72e1-634817c8e146.jpeg)

# Socketモジュールを使ったHTTP通信

python3のsocketモジュールを使った、HTTP通信の簡単な例

HTTPは簡単に言うと、HTMLファイルをTCP通信(TCPとは限らない)で送ったりするために、本来はどんなデータでも良いTCPのデータの部分(TCPペイロードとか言う)に対してルール(データはこのフォーマットに従ってくださいという)を作ったわけだから、recv,sendでそのフォーマットに従ったデータを送れば良い。

ここでは、[RFC7230](https://tools.ietf.org/html/rfc7230),[RFC7230日本語訳](https://help.amanohina.com/RFC7230-ja.html)を読みながら進める。

![TCPandHTTP.jpg](https://qi

元記事を表示

PandasでExcelファイル(.xlsx)を読み込む方法【Python】

この記事では、
PandasでExcelファイル(.xlsx)を読み込む方法
についての記事を書いていきます。

##Excelファイル(.xlsx)の読み込み方
ここから先は、jupyter labを使って進めていきます。
ダウンロード等がお済みで無い方は、まずはそちらからお願いします。

まずは、Pandasをimportします。

“`python
import pandas as pd
“`

次は、エクセルファイルの読み取りです。
エクセルはCSVファイルの読み取りと似ています。
CSVファイルについては下記記事をご覧ください。
PandasでCSVファイルを読み込む方法 – Qiita

“`python
df = pd.read_excel(‘excel/data.xlsx’)
df
“`

excelというフォルダ内のdata.xlsxというファイルを読み込みました。

エクセルでは上の行が空欄の場合があります。
例えば

元記事を表示

python3: bottle の使い方 (その 2)

こちらにあるスニペットを実行できる形にしました。
ログインのサンプルになります。
[Docs » チュートリアル](https://bottl-translate-ja.readthedocs.io/en/latest/01_1_tutorial.html)

“`py:login.py
#! /usr/bin/python
#
# login.py
#
# Nov/11/2020
# ——————————————————————
from bottle import get, post, request, run
#
def check_login(name,password):
rvalue = True
if name != password:
rvalue = False
return rvalue
#
# ——————————————————————
@get(‘/login’)

元記事を表示

シリーズとデータフレームの作り方【Pandas】Series/DataFrame

この記事では、
Pandasのシリーズとデータフレームの作り方
について書いていきます。

##シリーズ(Series)/データフレーム(DataFrame)とは
Series(シリーズ)は pandas のデータ構造のひとつです。 Series はリストのように順序を持った一次元のデータ列と、そのデータが何かを示す見出しを格納するオブジェクトです。
Series(シリーズ) — Pythonオンライン学習サービス PyQ(パイキュー)ドキュメント

pandasの大きな特徴にpandas.DataFrame(データフレーム)というオブジェクトがあります。 データフレームで、2次元の表形式のデータを処理します。 Series と同様に値とそれが何かを示す見出しを持っています。
DataFrame(データフレーム

元記事を表示

python3: bottle の使い方

フレームワーク bottle の使い方です。
Arch Linux で確認しました。

インストール

“`bash
yay python-bottle
yay python-jinja
“`

プログラム

“`py:greetings.py
#! /usr/bin/python
#
from bottle import route, run

@route(‘/hello’)
def hello():
str_out = “Hello World!

str_out += “


str_out += “こんにちは。

str_out += “


str_out += “Nov/11/2020

return str_out
#
@route(‘/morning’)
def morning():
str_out = “Good Morning!

str_out += “


str_out += “おはようございます。

s

元記事を表示

スプレッドシートからBigQueryに差分をアップデートする4つの方法

やりたかったことはスプレッドシート情報をBigQueryに上げて差分データの更新を行うということです。

# 困っていたこと

元々下記のフローで処理を行っていました。

![図7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/428239/3badb31a-30cd-79bd-5243-590365f9d673.png)

しかしこれだと、新規テーブル作成後にすぐにデータを挿入(insert)してもデータが更新されないことが多々ありました。
SQLの実行を行うときは`job id` のステータスで実行完了しているかは見えるものの、
時差がかなり大きかったり、sleepを入れるとinsertできることもありましたが、
できないこともあり安定した方法を探していました。

# 結論

上記のフローを下記フローに変えることで解決しました。

![図11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/428239/650be49

元記事を表示

Brainf*ckで湯婆婆を実装してみる 512行(Pythonでコードを生成・実行)

# はじめに
@Nemesis さんの[Javaで湯婆婆を実装してみる](https://qiita.com/Nemesis/items/c7192a7c510788d2cba2)のリスペクトです。誰かに先を越されまいとBrainf\*ckで実装(笑)してみました。

– 環境はWindows 10、conda : 4.8.3、python : 3.7.4.final.0、Jupyternotebook : 6.0.3
– 自作のPythonで書かれたBrainf\*ckコードジェネレータ
– 自作のPythonで書かれたBrainf\*ckインタープリタ(漢字を含むUnicode対応のWebサイトが見つからなかった)
– ソースコードのあるレポジトリhttps://github.com/GoodOldLandLine/brainf_ck

# Brainf\*ckについて
Brainf\*ckはコンパイラが最小で済むように作られた簡潔なプログラミング言語です。
文法は以下の通りとても簡単。
> \> ポインタをインクリメントする。ポインタをptrとすると、C言語の「ptr++;」に相

元記事を表示

ロジスティック回帰で、簡易的な信用スコアを作成してみた。

#モチベーション
2019年10月にSAS Japanさんから、”SAS Analytics Experience @ Milano”というカンファレンスに招待して頂き、Dr.Terisaさんという方から、Credit Score(信用スコア)についての講演を拝聴しました。
![集合写真.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/865631/2d66db09-83a7-b602-1068-7aa23f18a107.jpeg)
[*2019年10月 SAS Analytics Experience @ Milano*に行った時の写真]

その公演では、大きく下記の3つのトピックについて、共有して頂き、仕組みはシンプルだが、大きなビジネスインパクトがあることを学びました。
1. 信用スコアとはそもそも何なのか?
2. 現在、主流で、最先端のアルゴリズムは? (機械学習, 深層学習, 強化学習を用いたもの)
3. 信用スコアは「ローン貸付の与信の判断」以外だと、どんな場面で活用できそうか?

実務で信

元記事を表示

OTHERカテゴリの最新記事