- 1. 深層学習ライブラリKerasの学習済みモデルVGG16を使ってみた
- 2. pyenv + virtualenv + Anaconda
- 3. 【実装例】Cython(Python)でファイルを行単位で末尾行から読み込み
- 4. PythonでYahoo Newsをスクレイピングしてみた
- 5. Pythonでクラスの引数や戻り値の型アノテーションに自己のクラスを指定する
- 6. 一対比較法における一意性の検定
- 7. PythonとりあえずマスターRTA
- 8. tkinterでサイコロを作ろう
- 9. 【Python】PyCharmの環境設定(インストール、インタプリタ設定、パッケージの追加)Mac環境
- 10. 分割されたtsファイルを合体させるスクリプトを書いてみた
- 11. macOSでpythonを使えるようにした
- 12. CuteRでQRコード画像をつくった
- 13. 【Python】社会人一年目マンの日記を分析して、社会人生活のポジネガ判定とかをした
- 14. Matplotlib備忘録
- 15. TwitterAPIでチェンソーマン関連のツイートを分析した(初級)
- 16. PythonでJリーグのデータ分析をしてみた
- 17. BBC micro:bit (V1.5) の C/C++プログラミング – Windows10上のPython3仮想環境で、Mbed CLI オフラインコンパイルができる
- 18. Loguruでsyslogに出力
- 19. ABC161D Lunlun Number with python3
- 20. 【Python】インストールしたパッケージの保存と新しい環境へ一括インストールする方法 Mac環境
深層学習ライブラリKerasの学習済みモデルVGG16を使ってみた
ディープラーニング(深層学習)の勉強のためモデルを自作してみましたが、残念ながらうまくいきませんでした。学習済みモデルを利用するだけならなんとかできたので、その際知り得た知識をメモとして残します。 #プログラム 今回作成したプログラムを下に記載します。このプログラムは与えた画像が何であるかを1000種類の中から識別するものです。 “`python:vgg16.py import sys import numpy as np from keras.preprocessing.image import load_img,img_to_array from keras.applications.vgg16 import VGG16,preprocess_input,decode_predictions image_data = load_img(sys.argv[1],target_size=(224,224)) array_data = img_to_array(image_data) array_data = np.array([array_data]) array_data
pyenv + virtualenv + Anaconda
先人の色々な記事からインストールして使うことは出来ましたが、数か月して環境の元に戻し方が分からなくなってしまったので備忘録です。 あれっ、`deactivate`じゃなかったっけ。 **結論** “` $ pyenv global system “` ## そもそもそれぞれ何だっけ pyenv ・・・ pythonのバージョン毎に環境(pip install)を作成できる。 virtualenv ・・・ pyenvの拡張。名前を付けた環境(他の環境と同じpythonバージョンでも可)を作成できる。 この2つは、セットと考えていいでしょう。 Anaconda ・・・ 上記セットと同じ(ただし、conda install) ## その他 venv ・・・ Pythonの標準機能 pipenv ・・・ pip + venv みたいです。
【実装例】Cython(Python)でファイルを行単位で末尾行から読み込み
調べると案外例があまり出てこない。ファイルサイズがメモリに対して充分小さければreadで全読み込み+reverseでもいいが、巨大なファイルにも備えておきたいのでブロック単位で末尾読みを繰り返す。 実装は都合によりcythonなので、Pythonなら主にcdef周りを消せば使えると思う。 テストでは、Ubuntu上、改行コード”\n”のファイルでopen, closeが通ること、block size以下およびblock sizeより長い行を持つ場合でも正しくreadlinesできること、先頭に到達した場合もエラーが出ないこと、を確認した。 “`Python: cdef class ReversedFileReader(object): cdef: object file int block_size, pos str newline def __init__(self, str _path2file=”, int _block_size=4096): self.file = None
PythonでYahoo Newsをスクレイピングしてみた
#はじめに プログラミング初心者の私がPythonを使ってYahoo Newsをスクレイピングしてみたのでその手順を書き記したいと思います。(自分用のメモみたいなもの) 事前にBeautiful Soupとrequestsのインストールが必要です。 #やること 今回はYahoo Newsのアクセスランキングを取得してみます。画像の右下に「アクセスランキング」というものがありますね。これを1位から5位までスクレイピングで取得します。 ![スクリーンショット 2021-01-02 12.19.31.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/974569/b979585e-e98b-8a46-bdfc-01e2fa36e2e7.png) #書いたコード 短いコードですがたったこれだけでスクレイピングができてしまいます。(BeautifulSoupしゅごい) “`py import requests from bs4 import BeautifulSoup url = ‘https://news
Pythonでクラスの引数や戻り値の型アノテーションに自己のクラスを指定する
## 型アノテーションに自己のクラスを指定できない “`Python:list_node.py class ListNode: def __init__(self, val: int, next: ListNode): self.val = val self.next = next “` 上記(片方向連結リストのコンストラクタ)のように型アノテーションを書いたところ、ListNodeが定義されていないと警告が表示された。 > undefined name ‘ListNode’ ## Python3.7以上の場合: `from __future__ import annotations`を使用する “`Python:list_node.py from __future__ import annotations class ListNode: def __init__(self, val: int, next: ListNode): self.val = val self.next = ne
一対比較法における一意性の検定
#一対比較法における一意性の検定 Python3などを利用して一対比較法における一意性の検定を行いたいが、こういった統計を始めるにも、基礎知識がないと、入門書すら読めない。またそこまで(実際の集計手順から検定完了まで)、ちゃんとまとめて解説しているものが見当たらない感じ。 ということで最低限必要な基礎知識から実際の計算方法、実装までこの記事で書けたらいいなと思っています。 実際にどのようにして集計から検定を行うのか、ピンポイントの情報がなかったので、自分用メモとして残す目的です。 # 環境 どの処理ソフトを使おうが、あまり影響はないと思いますが、今回はPython3系を利用。 # 一対比較法とは 一対比較法概要[^1] >順位法では、感覚や好みの強さを測るのに、全ての試料を一度に評価して順位付けする必要があります。 試料数が多くなると、一度に順位付けすることが困難になることがあります。 そのような場合、2つの試料を対にして比較します。これを全ての対について行う方法が一対比較法です。 ### 一対比較法における試験の主な種類 + 一意性の係数 + 一致性の係数 + ブラッドレイ
PythonとりあえずマスターRTA
既にC/C++やFortranといった古い言語を知っている人に向けたPythonテキストです。 やりたいことは各自あるけれども、そのやりたいことを「Python やりたいこと」で検索しても、そもそも読めないから理解できないという人に向けて、最速で最低限を学ぶことを目指します。 ### 目指す最低限ライン – 環境構築(RTA版) – 変数とクラスとメソッド – コンソール出力 – リストと辞書 – numpy (便利なモジュール) – 【おまけ】その他の構文 これらをマスターするのではなく、何となく知っている感をつかむのが目標です。ですので、C/C++やFortranの知識で互換性があるものは省略しています。 ***出力内容とか、環境によって微妙に違うかもしれません。本質的でない出力命令も書いてません。情報の選択は個人的見解に基づきます。他の人は別な点を学ぶよう勧めるかもしれません。細かいことは気にしないでください。*** # 環境構築(RTA版) [Anaconda(リンク先)](https://www.python.jp/install/anaconda/index.h
tkinterでサイコロを作ろう
#始めに ふと自分のオリジナルアプリをpythonで作ってみようと思い、tkinterを使ってみました。しかし、ボタンの押された時の処理がなかなか分からず苦労したので記事にしました。tkinterでボタンが押された時の処理をどう書けばいいのか分からない人や、ラベルの内容の変更方法の知りたい方は読んで下さい。 #ソースコード “` python # 必要なライブラリーを読み込む import tkinter as tk import random # 画面の設定 root = tk.Tk() root.title(“Dice.app”) root.geometry(‘200×150’) # ボタンが押された時の処理 def dice(event): # ランダムな整数を生成して、labelの内容を書き換える value[“text”] = random.randint(1,6) value = tk.Label(text=”0″,font=(“”,80)) value.pack(fill = ‘x’, padx=20, side = ‘top’) #
【Python】PyCharmの環境設定(インストール、インタプリタ設定、パッケージの追加)Mac環境
こんにちは、かをるです。
今回は、GUIツールである【PyCharm】をつかってPythonの環境構築を行なっていきます。
PyCharmとは、Pythonの統合開発環境です。
様々なパッケージをインストールした環境を作成したら、その中のパッケージのリストを『r
コマンドラインによる環境開発よりもこういったツールを使いこなすことで、 こんにちは、かをるです。 今回は、Pythonのインストールしたパッケージを保存し、その保存した環境を別の環境へ一括でインストールする方法をご紹介していきます。 様々なパッケージをインストールした環境を作成したら、その中のパッケージのリストを『r分割されたtsファイルを合体させるスクリプトを書いてみた
# 分割されたtsファイルを合体させたい
複数の分割されたtsファイルがあったとして、そのままだと見にくいので1つのmp4ファイルにしたい。
# 作ってみた
https://github.com/MasatoHanayama/cat_ts
(MITライセンスです)
# 必須要件
1. Windows (開発環境は10 20H2)
2. Python3.x
3. ffmpeg
# 使用方法
1. 1つのフォルダに合体させたいtsファイルを保存します
2. ts_cat.pyを実行します (ここでffmpegに食わせるts_cat.txtが生成されます)
3. cat.batを実行します (先に生成されたts_cat.txtを元にffmpegをたたきます)
4. output.mp4ができあがります
macOSでpythonを使えるようにした
### 背景
macOS BigSurでpythonをつかおうとおもった。
(CuteRというコマンドを使いたかった:[CuteRでQRコード画像をつくった](https://qiita.com/hann-solo/items/fe0e031b3d0b5be7e0cd))
ところが、`pip`をつかうと
“`bash
$ pip install
dyld: Library not loaded: /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
Referenced from: /Library/Frameworks/Python.framework/Versions/3.6/Resources/Python.app/Contents/MacOS/Python
Reason: image not found
Abort trap: 6
“`
CuteRでQRコード画像をつくった
### 背景
年賀状にQRコードを貼ろうとおもった。ふつうのじゃおもしろくないし、真ん中にロゴが入っているのもちょっと違うし。CuteRというpythonで書かれたコマンドがおもしろそうなので、使えるようにしてみた。
↑ こんなかんじのQRコードがつくれるらしい! ほかでも遊べそうw
### pythonのインストール
別記事でまとめた ⇒ [macOSでpythonを使えるようにした](https://qiita.com/hann-solo/items/674140a69bcb48aba38c)
### CuteRのインストール
作業ディレクトリを作成して移動
“`bash
$ mkdir CuteR
$ cd CuteR
“`
つくったディレクトリに`venv`で仮想環境をつくり、アクティベート
“`bash
$ python3.9 -m venv .venv
$ . .ven
【Python】社会人一年目マンの日記を分析して、社会人生活のポジネガ判定とかをした
# はじめに
皆さんこんにちは。
2020年4月より社会人になった者です。
社会人生活がスタートしたのを機に、**日記を付けるようになりました。**
毎日行った事や感じた事を日記として残すことで、将来楽しかった事や辛かった事を見直したらニヤニヤできるんじゃないかなと思ってます。
折角日記を書くのだったらと、データ分析がしやすいフォーマットにして日記を書き続けました。
約80日分の日記があるので、これらを定量評価・定性評価してみた結果を共有させていただきたいと思います!
# 目的
日記の中身を定量的&定性的に分析する事で、社会人生活の満足度(=ポジネガ度)[^1]を多面的に評価する。
[^1]: 「社会人生活の満足度」の定義はふわふわしてますが、ポジティブに日々を過ごせているかということです。ポジティブなら日々を楽しく過ごせています。ネガティブならそれを改善するべきです。ネガティブスコアで高い値が出てしまうのなら、転職も考えて対策を行う、といった具合です。ざっくりとしていて申し訳ありません。
# 行ったこと
_主観評価_と_客観評価_の観点から分析を行いました。
はじめに日
Matplotlib備忘録
|# 概要
Matplotlibで覚えておきたいことをメモ
([神記事](https://qiita.com/nkay/items/d1eb91e33b9d6469ef51)ありました、こちらで全て済むかも笑)
# タスク
### 1. plt.〇〇で折れ線グラフを描画
### 2. plt.〇〇で複数の折れ線グラフを描画
### 3. 日本語化について(Mac)
### 4. 目盛りの整数化
# 方法
### 1. plt.〇〇で折れ線グラフを描画
#### 1で扱うサンプル
|sample1|sample2|sample3|
|:-:|:-:|:-:|
|1|2|3|
|1|2|3|
|1|2|3|
|1|2|3|
|1|2|3|
|1|2|3|
|1|2|3|
|1|2|3|
|1|2|3|
|1|2|3|
|1|2|3|
|1|2|3|
|1|2|3|
|1|2|3|
|10|20|30|
|10|20|30|
|10|20|30|
|10|20|30|
|10|20|30|
|10|20|30|
|10|20|30|
|10|20|30|
|10|20|30|
|10
TwitterAPIでチェンソーマン関連のツイートを分析した(初級)
# はじめに
2020年も遂に大晦日がやってきました。
年の瀬に記事を投稿したいと思います。
最後の記事は自分が楽しめる題材にしようということで、
最近ハマりにハマっている、**チェンソーマンのツイートを分析しました!!**
**最終回とかアニメ化とか色々あった**ので分析したら面白そうでは?と思いました
(アニメ化&2部、おめでとうございます!!!???)
ほんとに色々と初心者レベルなのでミスも目立ちましたので、優しい心で閲覧していただけるとありがたいです笑
コメント、ウェルカムです!ぜひともお願いします!?
# 作業内容の概要
**1. DB作成**
– 毎日およそ20000~30000ツイートを収集。今回は12月9日から12月29日までのツイートを定期収集
– 収集したツイートの結合。データフレーム形式
– ツイートの修正
– 修正後のデータフレームをPostgreSQL上に保存
**2. 分析(メイン)**
– 総ツイート数、いいね数、リツイート数
– いいね、リツイートの各々の数が最も多いツイート
– 日別ツイート数
– 高頻度の単語上位30個表示
## 1.
PythonでJリーグのデータ分析をしてみた
今回、[FootyStats](https://footystats.org/jp/)というサッカーデータを扱うサイトからJリーグのデータをダウンロードしPythonで色々調べてみました。ただ2020年シーズンのcsvデータがまだダウンロードできなかったので2019年のデータを使っています。
このサイトはJリーグだけでなく世界各国のリーグの情報を扱っているので、サイトを眺めるだけでも面白いです。
Jリーグ(J1、J2、J、カップ戦)のデータは、それぞれ試合データ、チームデータ、選手データがダウンロードできます。
(順位表は[J.LEAGUE Data Site](https://data.j-league.or.jp/SFRT01/?search=search&yearId=2019&yearIdLabel=2019%E5%B9%B4&competitionId=460&competitionIdLabel=%E6%98%8E%E6%B2%BB%E5%AE%89%E7%94%B0%E7%94%9F%E5%91%BD%EF%BC%AA%EF%BC%91%E3%83%AA%E3%83%
BBC micro:bit (V1.5) の C/C++プログラミング – Windows10上のPython3仮想環境で、Mbed CLI オフラインコンパイルができる
# The BBC micro:bit development using the Mbed CLI in a Python3 environment on Widows 10 – this target micro:bit v1.5
BBC micro:bitは、MCUにnRF51822を採用した学習用マイコンボードです。Mbed開発環境を使えば、nRF51822の機能を存分に楽しむことができるでしょう。micro:bit単体はもちろんのこと、電子工作や無線通信など、いろいろと活用方法の幅が広がります。
本記事では、Windows10上でもコンパイルができる Mbed CLI オフラインツールを使って、その開発環境の構築における問題点と解決方法を試行錯誤で説明していきます。
## 主な内容
– Windows10とPython3での問題点
– microbit_blinky サンプル
– microbit-hello-world サンプル
– mbed new (create-only) コマンド
– パッケージ化とテンプレート化
尚、BBC micro:bit V2 が20
Loguruでsyslogに出力
お手軽に使う
“`py:logt.py
from loguru import logger
import logging
import logging.handlers
import os
def main():
handler = logging.handlers.SysLogHandler(address=’/dev/log’)
logger.add(handler, format=”{level} | {message}”)
logger.info(“xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx”)
if __name__ == ‘__main__’:
main()
“`
“`
# tail -f /var/log/messages
Dec 31 20:11:00 localhost journal[42166]: INFO | xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
“`
ABC161D Lunlun Number with python3
#[ABC161D Lunlun Number](https://atcoder.jp/contests/abc161/tasks/abc161_d)
##正解コード
“`
import queue
q = queue.Queue()
for i in range(1,10):
q.put(i)
K = int(input())
for k in range(K):
x =q.get()
last = x % 10
if last != 0:
q.put(10*x + last – 1)
q.put(10*x + last)
if last != 9:
q.put(10*x + last + 1)
print (x)
“`
##考え方
1から9のルンルン数から末尾に一の位の数との差が1以下である数を付け足して新たなルンルン数を生成していく。そして生成されたルンルン数からまた新たにルンルン数を生成していく。K個目のルンルン数が生成されたら処理を終了する。
##ポイント1
K個のルンルン数全てをリスト
【Python】インストールしたパッケージの保存と新しい環境へ一括インストールする方法 Mac環境