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

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

Python 基本書き方

pythonの基本の整理のログを書きます。

###データタイプ

intとfloatで計算すると、情報量の多いfloat型になる

“`
type(3+1.3)
> float
“`

0,1 0.0001 など小数を書くとき

“`
1e-1
> 0.1 ( 10の-1乗 = 10分の1 = 0.1)
1e-3
>0.001
“`

スライス

“`
‘hello'[1:3]
>el

‘fileid.png'[:-4]
>fileid
‘fileid.png'[-4:]
>.png
“`

スプリット 分けてリストにする

“`
‘hello world’.split(‘ ‘)
>[‘hello’ ,’ world’]
“`

改行
“`\nで改行“`

タプル  変更できないリスト

Set ユニークな値だけを持つリスト (頻度低)
“`
set1 = {1,1,1,2,2,3,3,3}
> [1,2,3]
“`

set()はlistの重複を取り除くときによく使う

“`
list1 = [1,2,2,3,3,3,4,4,4,4

元記事を表示

DynamodbをLambdaからSQLっぽく操作する

# 説明の前に

pipのモジュールを利用する方法は、下記の記事を参考にさせていただきました。
ありがとうございました。

【Python】AWS Lambdaで外部モジュールを使用する
https://qiita.com/SHASE03/items/16fd31d3698f207b42c9

# 1.準備
LambdaにPipのモジュールを持ってくる必要があるため、ローカルにDQLモジュールをインストールする。

プロジェクトフォルダ内で、下記

“`sh
$pip install dql -t ./
“`

# 2. ソースコード
ファイル名は`lambda_function.py`

“`python
import dql
def lambda_handler(event, context):
engine = dql.Engine()
engine.connect(region=”us-west-2″)
results = engine.execute(“DELETE FROM tablename WHERE tm >= 1420071600 A

元記事を表示

Python3でマイクロ秒表示、日本時間で

– プログラム

“`Python3
# coding: utf-8

from datetime import datetime, timedelta, timezone
import time

for i in range(0, 7):
date = datetime.now(timezone(timedelta(hours=+9), ‘JST’)).strftime(“%Y-%m-%d %H:%M:%S.%f”)
print(date)
time.sleep(0.17)
“`

– 実行結果

“`text
2020-08-13 04:03:58.874931
2020-08-13 04:03:59.045158
2020-08-13 04:03:59.215385
2020-08-13 04:03:59.385582
2020-08-13 04:03:59.555776
2020-08-13 04:03:59.725971
2020-08-13 04:03:59.896166
“`

元記事を表示

天気予測(機械学習)

#気象庁のデータを使って、雨が降るか予測します。

import numpy
import matplotlib
import sklearn
import pandas as pd

■データの特徴量は年月日、平均気温、降水量の合計、日照時間・・・。
train_df = pd.read_csv(‘train_tenki.csv’, encoding=’cp932′)
test_df = pd.read_csv(‘test_tenki.csv’, encoding=’cp932′)
combine = [train_df, test_df]

■雨が降ったかどうかが知りたいので、雨がふれば1、晴れれば0。テストデータには無し。
train_df[‘rain’] = train_df[‘降水量の合計(mm)’].apply(lambda x : 1 if x > 0 else 0)

■梅雨など時期によるところがあるので、年月日の月のみを抽出。
train_df[‘date’] = pd.to_datetime(train_df[‘年月日’])
train_df[‘Date’] =

元記事を表示

MAC OSに言語(GO&Python)をインストール

## はじめに

今更ながらMacMini 2020を購入しため、プログラミングの勉強を最近行っているので、
備忘録も兼ねて言語のインストール履歴を記載しておきます。

## HomeBrewのインストール

Mac OSのパッケージ管理システムで、CentOSで言うところのyumやdnfと同じです。
インストールにては以下コマンドを実行します。

“`conseole
/usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
“`

私は現在GOとPythonを使ってプログラミング学習を行っているので、以下2つをインストールしておきます。

## GOのインストール

“`conseole
$ brew install go

$ go version
go version go1.14.6 darwin/amd64
“`

## Python 3系のインストール

“`conseole

$ brew install pyenv

$

元記事を表示

Ahead-of-Time コンパイル用 Numba 環境の導入 (Windows)

#はじめに
競技プログラミングの練習用に、
Ahead-of-Time (AOT) コンパイル可能な Numba 環境を導入するにあたり、
基礎知識が無さ過ぎてハマったので、備忘録を兼ね手順を以下に共有します。
実行環境は Windows です。詳細は文末に付記します。

#手順1:Numba のインストール
以下の公式ドキュメントを参考にしました。
https://numba.pydata.org/numba-doc/latest/user/installing.html#installing-using-conda-on-x86-x86-64-power-platforms

当初 pip でインストールした numpy と
conda でインストールした Numba が共存していたので、
念のため、両方アンインストール後 conda で Numba をインストールしました。

ちなみに、この段階で Numba を実行すると、Microsoft C++ (MSVC) コンパイラツールセットが無い、
というエラーが出力されます。
msvc が何のことやら分からず、ここでハマりました。

元記事を表示

Windows 10 で Python のインストールから Poetry と pyenv の利用

## はじめに

最近は Visual Studio を利用した Windows の開発ばかりなので、久しぶりに Python で開発がしたい。

せっかくなので Python のバージョン管理やパッケージ管理の方法を見直してみたいのと、Windows での Python 開発に関する情報が少ないため、自分なりにまとめてみました。

## 前提環境

* Windows 10 Pro x64 1909
* [PowerShell v7.0.3](https://github.com/PowerShell/PowerShell/releases)
* [Visual Studio Code v1.47.3](https://code.visualstudio.com/)

## Python のパッケージ管理について

Python はファイル操作や暗号化や通信など様々な仕組みが標準ライブラリとして組み込まれていますが、
Webスクレイピングや機械学習などを行う場合は、それらを実現するためのクラスや関数のモジュールが含まれた様々なパッケージ群(外部ライブラリ)を組み合わせること

元記事を表示

Pythonでの乱数があるときのテスト

# Scientific Computing with Pythonの続き
freeCodeCampでコツコツPythonを勉強しています。
[前回の記事](https://qiita.com/makky0620/items/2eb431775a4540526966)では、今回は*Probability Calculator*に挑戦します。

– Python for Everybody
– Scientific Computing with Python Projects
– Arithmetic Formatter
– Time Calculator
– Budget App
– Polygon Area Calculator
– *Probability Calculator(今回はここ)*

# 5問目:[Probability Calculator](https://www.freecodecamp.org/learn/scientific-computing-with-python/scientific-computing-with

元記事を表示

Pythonのクラス継承の問題を解いてみる

# Scientific Computing with Pythonの続き
freeCodeCampでコツコツPythonを勉強しています。
[前回の記事](https://qiita.com/makky0620/items/6b577f7f4ea8101ed261)では、今回は*Polygon Area Calculator*に挑戦します。

– Python for Everybody
– Scientific Computing with Python Projects
– Arithmetic Formatter
– Time Calculator
– Budget App
– *Polygon Area Calculator(今回はここ)*
– Probability Calculator

# 4問目:[Polygon Area Calculator](https://www.freecodecamp.org/learn/scientific-computing-with-python/scientific-computing-wi

元記事を表示

PCA9685使用のI2C接続16チャンネルサーボ&PWM駆動キットをラズパイ3bに接続

PCA9685を使用したI2C接続の、16チャンネル、サーボ&PWM駆動キットをRasperryPi3bに接続、これにHobbyWing WP-1060を1台、FutabaのサーボモーターFP-S148を2ヶ接続するシステムを作りました。
サーボ2台までは、Raspberryで制御できるのですが、それを越えるとだめなので検討の結果このキットを使用することにしました。
PCA9685をRaspberryPiに接続した事例が見つからなかったので、メモ書き程度のつもりで、アップしました。

1.PCA9685の説明
 PCA9685はI2Cに接続し、16チャンネル(16ヶ)のサーボモーターもしくはLEDを駆動でき、1チャンネル最大25maの電流を流せる仕様になっています。複数ユニットの接続(最大62台)も可能になっているようで、各ユニットのI2Cアドレスを変えることにより(ハンダ付けにて変更)、可能だそうです。PCA9685のI2CアドレスはX040ですが、別途X0E0のアドレスがあり、このアドレスで、前ユニット・チャンネルへのコマンドを発行できるそうです。私が作ったシステムでは、I2C接続

元記事を表示

【Python学習中】 ピーマン嫌いな人の強がり if/for/else/continue/format

子どもの頃からピーマンがあまり好きではないので。。。
ピーマンを食べずに済むコードを書きながら、Pythonの基本文法の練習です。

“`python:green_pepper.py

for vegitable in [‘carrot’, ‘green pepper’, ‘lettuce’, ‘onion’, ‘garlic’]:
if vegitable == ‘green pepper’:
continue
print(f”I ate {vegitable}.”)
else:
print(‘I love vegitables!’)

“`
“`
I ate carrot.
I ate lettuce.
I ate onion.
I ate garlic.
I love vegitable!
“`

元記事を表示

PythonからMeCabを使用してユーザ辞書が適用されずハマった

#はじめに
研究目的で実践医療用語が収納された[ComeJisyo](https://ja.osdn.net/projects/comedic/)をmecabのユーザ辞書に登録した際に,辞書が反映されなかった話です.結論から言うとだいぶ初歩的なミスで, mecabの使い方をよく理解していなかったのが原因でした.しかし,自分は結構困ってしまったので,もしかして誰かの役に立つかもしれないので記録を残します.

#参考サイト
(1)ComeJisyoダウンロード:https://ja.osdn.net/projects/comedic/
(2)ユーザ辞書の登録:https://qiita.com/quvo/items/9ef250d58971eadf6e1a

(2)の記事は2016年の古い記事のため,(1)で公開されているComeJisyoの一番古いバージョンしかない時期でした.そのため,(2)で紹介されているような辞書をmacで使用するためにUtf-8に変換してdicファイルを生成する必要はなく,今だったら公開されているUtf-8版をダウンロードすれば既にdic形式のファイルも付いていま

元記事を表示

「ゼロから作るDeep Learning」自習メモ(その6)

「ゼロから作るDeep Learning」(斎藤 康毅 著 オライリー・ジャパン刊)を読んでいる時に、参照したサイト等をメモしていきます。 [その5](https://qiita.com/slow_learner/items/4e799af75779e35abca9) ←

今回は番外編。

>P86
ニューラルネットワークの利点は、すべての問題を同じ流れで解くことができる点にあります。たとえば、解くべき問題が「5」を認識する問題なのか、「犬」を認識する問題なのか、それとも、「人の顔」を認識する問題なのかといった詳細とは関係なしに、ニューラルネットワークは与えられたデータをただひたすら学習し、与えられた問題のパターンを発見しようと試みます。

この本ではMNISTの手書き数字データを使っていますが、じゃあ、他のデータもこの本のプログラムで処理できるのかやってみよう、という記事です。

TensorFlow のサイト https://www.tensorflow.org/?hl=ja の初心者向けチュートリアルに
「スニーカーやシャツなど、身に着けるものの写真」のデータFashion

元記事を表示

「ゼロから作るDeep Learning」自習メモ(その5)

「ゼロから作るDeep Learning」(斎藤 康毅 著 オライリー・ジャパン刊)を読んでいる時に、参照したサイト等をメモしていきます。 [その4](https://qiita.com/slow_learner/items/d914454ecee154e98cd2)← →[その6](https://qiita.com/slow_learner/items/5589a95081d30f82fbbd)

##4 ニューラルネットワークの学習

何をしているかの概略は、P112 からの説明で、なんとなくわかります。
損失関数を最小にするために、勾配を求めて、勾配の方向へ進むというのも、グラフのイメージで納得できるのですが、

微分、偏微分、2重和誤差、交差エントロピー誤差といろんな言葉と数式が並ぶと、わけがわからなくなりそうです。

とりあえず、4.1 データから学習する を読んだら、
>P88
損失関数はニューラルネットワークの性能の“悪さ”を示す指標です。現在のニューラルネットワークが教師データに対してどれだけ適合していないか、教師データに対してどれだけ一致していないかということ

元記事を表示

Spotify APIを使ったヒット予測3:米津玄師のサブスク解禁はチャートに影響があるのか?

Spotify APIを使って今回は 8/5(水)に米津玄師のサブスク解禁によってチャートにどのような影響があったのか、を可視化してみようと思います。

##髭男、King Gnu、あいみょんに影響はあったのか?
早速チャートを見ていきましょう。

###King Gnu「白日」
![485B2F9A-73AA-4807-847A-5E83EEF734C4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/661171/e26f44d8-c8fc-c59c-4f92-9057014d6b2b.png)

はい、影響ありますね。
矢印の場所が米津玄師がサブスク解禁した8/5(水)です。
それまではトップ10をキープしていたのですが、8/5から急に16位まで下がりました。

###official髭男dism「Pretender」
![ED34C921-5AC6-44E1-A630-12A6B5A88399.png](https://qiita-image-store.s3.ap-northeast-1.ama

元記事を表示

【Python】Django でHTTPステータスコード403/404/500用の画面を作る

#はじめに
Djangoの参考書で、
**HTTPステータスコード403/404/500用の画面を作る** と言う
セクションがあり、いざ *runserver* しても404エラーを起こしても
カスタマイズした404画面が表示されなかった。

##理由は、 *DEBUG = True* だから
ステータスコード403/404/500用の画面を作るには
*templates* ディレクトリの”直下”に
`403.html` `404.html` `500.html` を作成するだけです。

ただ、このまま *runserver* しても
この画面が表示されます。(作った画面と違う…)

![page_not_found.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/641252/400b3923-32b7-c738-9b46-ba91fdca21b5.png)

画面下部に
`You’re seeing this error because you have DEBUG = True in your

元記事を表示

DynamoDBをPythonからSQLっぽく操作する。

# set up

“`sh

pip install dql
“`

# code

“`python

import dql
import boto3
import os
table_name=os.environ[‘TABLE_NAME’] # dynamodb

engine = dql.Engine()
c = engine.connect(
region=os.environ[‘AWS_DEFAULT_REGION’],
access_key=os.environ[‘AWS_ACCESS_KEY_ID’],
secret_key=os.environ[‘AWS_SECRET_ACCESS_KEY’],
host=os.environ[‘HOST’],
port=int(os.environ[‘PORT’]),
is_secure=False
)
print(“–scan–“)
results = engine.execute(f”SCAN * FROM {table_name} LIMIT 10”)
for i

元記事を表示

PyGMTの導入

PythonでGMTがつかえるらしいので入れてみる。
https://www.pygmt.org/dev/install.html

# 仮想環境の構築

“`bash:
conda create -n pygmt python=3.8.2
conda activate pygmt
conda install pip numpy pandas xarray netcdf4 packaging gmt
conda install pygmt -c conda-forge
conda install ipython jupyter jupyterlab -c conda-forge
“`

# サンプルテスト
チュートリアルにしたがってすすめる。

“`bash:
conda install pytest pytest-mpl ipython
“`

`python`を起動して、

“`Python:
import pygmt
pygmt.show_versions()
pygmt.test()
“`

返ってきたメッセージ

“`python:
==============

元記事を表示

zsh: command not found: pipが何回も出てきやがる

HomebrewからPython3をインストールしました。これで「pipも同時にインストールできたよ」と記事に書いてあったので、そのままライブラリをインストールしたら `zsh: command not found: pip` が出てきた。いろんな記事を見ても全然なおらん。なんとか海外の記事で解決したのでメモ。

## 解決

原因はよくわからんけど、このコマンドでpipをインストールしたら解決した

“`
$ sudo easy_install pip
“`

確認

“`
$ which pip
/usr/local/bin/pip
“`

参考にした海外の記事
https://www.it-swarm.dev/ja/python/mac-os-zsh%EF%BC%9A%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%81%8C%E8%A6%8B%E3%81%A4%E3%81%8B%E3%82%8A%E3%81%BE%E3%81%9B%E3%82%93%EF%BC%9Apip/831181572/

元記事を表示

【募集終了案件】YoutubeDataAPIv3を用いてスクレイピング→スプレッドシートに保存

pythonに初めて触れてから約1年が経ちましたので
趣味の競馬ばかりに対してばかりでなく
そろそろ本腰いれて案件をとっていけるように簡単な案件から
経験を積んでいこうと画策中。

↓↓↓今回やらせていただく募集終了済みの案件(ランサーズ様より本文抜粋)↓↓↓

———————————————————————————-
youtube上のキーワード検索した状態で、
指定の条件にある動画のURL、再生回数、登録日付、チャンネル登録者数、タイトルなどの情報を抜き出してスプレッドシートに反映させたい

指定の条件は、再生回数/チャンネル登録者数=○%以上 ・・・a%以上
       ○日以内に投稿されたもの ・・・b日以内
       検索キーワード ・・・キーワード’c’
という条件

指摘の検索キーワードで条件に該当する動画をひたすら集めてくる形
キーワードは複数登録可能
キーワードの選定はこちらでやります

———————————-

元記事を表示

OTHERカテゴリの最新記事