nprogram’s blog

気ままに、プログラミングのトピックについて書いていきます

janomeで形態素解析する

janomeを使用して、形態素解析します import os from janome.tokenizer import Tokenizer tokenizer = Tokenizer() tokens = tokenizer.tokenize(u'すもももももももものうち') for token in tokens: print(token.surface) すもも も もも も もも の うち …

VSCodeでAnaconda Prompt環境を構築する [Windows]

はじめに VSCodeでAnaconda Prompt環境を構築する方法について記載します Visual Studio Code のターミナルから Anaconda Prompt をオープンする まずはAnaconda Promptのパスを取得します。Windowsの検索画面から、ファイルの場所を開き、 Windowsの検索画…

Pythonの正規表現について

Pythonの正規表現 正規表現を使うと文字列を素早く取得できます。 以下のサイトがとても参考になります。 書きながら覚える!Pythonで正規表現を使う方法【初心者向け】 | TechAcademyマガジン 使用例 import os import re def can_extract_date_YYYY_MM_DD(…

Python enum学習

はじめに Pythonで定数を安全に使いたいなと思い、enumについてまとめました。詳しくは以下をご確認ください enum --- 列挙型のサポート — Python 3.8.2 ドキュメント Enum の作成 列挙型は読み書きが容易になるよう class 文を使って作成します。 列挙型は…

Django学習まとめ (2020)

概要 Django学習まとめ記事です。 サイト 素晴らしい公式ドキュメントがあります。 公式ドキュメント Django ドキュメント | Django ドキュメント | Django 検索したいときはここで検索したいキーワードを入力してください。 HttpResponseなど Django docume…

Python ロギング学習

はじめに Pythonのロギングについて情報します。 コード from logging import basicConfig, getLogger, DEBUG # これはメインのファイルにのみ書く basicConfig(level=DEBUG) # これはすべてのファイルに書く logger = getLogger(__name__) logger.debug('he…

Beautiful Soupを用いたスクレイピングまとめ

はじめに Beautiful Soup使い方についてまとめる記事です。 概要 Pythonのスクレイピングで使用されるライブラリは以下が主に以下があります。 BeautifulSoup Requests Selenium 役割や長所・短所は以下のようになります。 データの取得 データの抽出 特徴 B…

pandasのread_excelでExcelファイルのリード・ライト

pandasのread_excelでExcelファイルのリード・ライトを簡単に実施したい pythonでExcelを扱うにはいくつかの方法がありますが、pandasのread_excelをここでは取り上げます。 上記を簡単に扱えるように、ラッパークラスを作成してみました。 import pandas as…

Tableau Publicなら無料でTableauが使用できます

はじめに データBIツールはTableau(タブロー)が有名ですが、購入すると年間10万円程度必要になり、敷居が高いです。 Tableau Publicであれば、無料で使用することが可能です。 https://www.webprofessional.jp/visualize-big-data-using-tableau/

Nuxt.jsとVuex学習

はじめに Nuxt.jsとVuexの学習内容を記録していきます。 Nuxtは、モダンな web アプリケーションを作成する Vue.js に基づいたプログレッシブフレームワークです。 Vue.js 公式ライブラリ(vue、vue-router や vuex)および強力な開発ツール(webpack、Babel…

VSCode上で、Anaconda環境を動作させる

はじめに VSCode上で、Anaconda環境を動作させる方法を記載します。 手順 Anacondaをインストールする Anacondaのパスをシステム環境設定から通す D:\Anaconda3\ D:\Anaconda3\Scripts\ D:\Anaconda3\Library\bin\ D:\Anaconda3\condabin\ VS Code でPython…

Firebase調査

はじめに Firebaseを調査します。 Firebaseの始め方 - Qiita

AWSについて調査しています。

クラウドエースに2年前にJoinした光の戦士 | apps-gcp.com

Anaconda Promptをバッチファイル化する

はじめに Anaconda Promptのコマンドから、手動でAnaconda仮想環境を起動するのは大変です。 そのような場合はbatファイル化するといよいでしょう。 anaconda promptは、activate.batというバッチファイルから起動が可能です。 インストール階層(通常C:\Use…

beautifulsoup4でスクレイピング

はじめに beautifulsoup4でスクレイピングを行います。 インストールコマンド 参考リンク Python Webスクレイピング テクニック集「取得できない値は無い」JavaScript対応@追記あり6/12 - Qiita

WPF開発復習

WPF開発復習 WPF開発技術を復習します。(かなり忘れているため・・・) 参考サイト 以下が体系的にまとめられていていそうです https://anderson02.com/ MVVMな設計のTips~サービスを作ってVMの依存性を排除~ http://sourcechord.hatenablog.com/entry/2016…

jupyter Notebookのコードをexe化する方法 [Anaconda3環境]

jupyter Notebookのコードをexe化する方法 [Anaconda3環境] jupyter Notebookのコードをexe化する方法を記録します。 手順 まず、Jupyter Notebookを開き、以下のイメージのように、メニューのFile⇒Downlaod as ⇒ Python (.py)を選択してください。 次に、An…

Python + Selenium + ChromeでGoogleの検索を自動化する [非headlessモード][XPath]

はじめに 本記事は、Python + Selenium + ChromeでGoogleの検索を自動化する手法について記載したものです。 今回は、XPathを使用して、検索を行います。 XPathとは XPathはXML文章中の要素、属性値などを指定するための言語です。 XPathではXML文章をツリー…

Python + Selenium + ChromeでGoogleの検索を自動化する [非headlessモード]

はじめに 本記事は、Python + Selenium + ChromeでGoogleの検索を自動化する手法について記載したものです。 ChromeのWeb操作は、ChromeDriverを用います。 ChromeDriverを導入する方法として、以下の2つの方法がありますが、本記事は前者の方法を使用しま…

Python データ構造学習

リストを使って記載してみる def names(name_and_grouplist, group_name): _names = [] for name_and_group in name_and_group_list: if name_and_group[0] == group_name: name = name_and_group[1] if name not in _names: _names.append(name) return _na…

C++のコードレビューまとめ

C++のコードレビューのまとめを行います 派生される可能性があるクラスの場合、デストラクタにvirtualをつけよう ポリモーフィズムを利用すべく作った基底クラスのデストラクタはvirtualが必要であるためです。 基底クラスのデストラクタにvirtualを付けない…

pandasを使って株価情報を取得しましょう

はじめに pandasを使うと、webページの表(tableタグ)のスクレイピングが簡単にできます。 環境 Windows version : 1903 (Windows 10 Home) conda version : 4.7.12 conda-build version : 3.18.8 python version : 3.7.3.final.0 selenium : 3.141.0 手順 …

Anaconda3で作成した仮想環境上で、Seleniumを使ってブラウザを操作する [Windows]

はじめに PythonとSeleniumを使ってブラウザを操作する作業を行いたいと思います。 Pythonのバージョンやインストールするモジュールのバージョンによって、プログラム動作が変わる可能性があります。 そのため、仮想環境上でPythonやSeleniumのモジュールを…

template関数でsplit関数を実装する (空白文字列区切り)

C++

template関数でsplit関数を実装する (空白文字列区切り) template関数を使用することで、複数の型を同じ関数で扱うことができるようになります。 使い方 関数呼び出し時には、通常の関数呼び出しとは異なり、型を指定する必要があります。 const std::vector<std::string></std::string>…

Modern_C++_leet文字列変換

C++

#include <string> #include <iostream> #include <map> #include <algorithm> // transform #include <vector> #include <numeric> //iota, accumulate // leetマップ変数 (グローバル変数) std::map<char, char> leet { {'A', '4'}, {'E', '3'}, {'G', '6'}, {'I', '1'}, {'O', '0'}, {'S', '5'}, {'Z', '2'} }; /** * @fn *</char,></numeric></vector></algorithm></map></iostream></string>…

UML学習まとめ

UML

UML学習全般を記載する記事です 関連端名(ロール名) 関連の両端にそれぞれのクラスのロール名を記述することができます。 ロール名は相手方クラスとの関連における自分のクラスの役割(role)を示します。 以下の記事を参照ください。 以下の記事を参照くだ…

Observerパターン [C#] [pull型]

Observerパターンとは あるオブジェクトの状態に依存するオブジェクトがあるとき、状態の変化をそれらのオブジェクトに依存せずに自動的に通知するパターン push型とpull型 Observerパターンでは,push型とpull型があります。違いは以下のとおり。 push型 : …

Observerパターン [C#] [push型]

Observerパターンとは あるオブジェクトの状態に依存するオブジェクトがあるとき、状態の変化をそれらのオブジェクトに依存せずに自動的に通知するパターン push型とpull型 Observerパターンでは,push型とpull型があります。違いは以下のとおり。 push型 : …

.net Core 3.0学習記事 [WPF]

はじめに .net Core 3.0学習用の情報を集める記事です。 WPF の TreeView で任意の項目が表示されるようにスクロールする https://blog.okazuki.jp/entry/2019/07/25/111424

デバッグ技術

はじめに ソフトウェア評価時では、デバッグは必要不可欠です。 以下のような手順で行うと思います。 手順 バグを記録する (バグレポートを書く) バグを再現する バグを分離する (バグ発生原因を特定するために必要) バグを修正する バグを記録する バグ内容…