macOSで外部接続したディスプレイを、メインのディスプレイとして使うためには、下記の設定を行います。
## 作業手順
右上のアップルメニューより、システム環境設定->ディスプレイを選択します。
配置タブを選びディスプレイの配置が表示されて...
pythonのvenv環境でmatplotlibを使おうとすると以下のRuntimeErrorが発生したので、解決させた方法を書いておきます。
- エラーメッセージ
```language-xxx
RuntimeError: Python is not installed as a framework.
The Mac OS X backend will not b...
pythobでは、os.listdir()関数で、ディレクトリ内に存在するファイルの一覧を取得できます。
```language-python
import os
files = os.listdir('output')
for file in files:
print(file)
```
上記のプログラムを実行してみたところ、出...
animetranscripts.wikispaces.comというサイトでは、英語版が出ているアニメ作品の字幕スクリプトのテキストを有志の人が作成し、提供してくれています。
今回は、プログラムの勉強をかねて、このテキストを全部スクレイピングしてテキストファイルに出...
pythonで、指定されたディレクトリがなければ作成するプログラムです。
下記のサンプルでは、outputというディレクトリの存在チェックを行い、なければ作成しています。
## プログラム
```language-python
import os
if not os.path.exists('...
pythonでBeautifulSoupを使おうとしたときに「UserWarning: No parser was explicitly specified」の警告が出ることがあります。
## 実行したコード
```language-python
import requests
from bs4 import BeautifulSoup
url = 'http://animetrans...
macOSのiTerm2上でtmuxを使用時に、マウススクロールを有効にするには、tmux.confに下記の定義を追加すれば良いです。
```language-bash
set -g mouse on
bind -T root WheelUpPane if-shell -F -t = "#{alternate_on}" "send-keys -M" "select-pan...
macでvagrant+NFSによるフォルダ同期を使用している時、`vagrant up`コマンドの実行時にrootパスワードを聞かれる場合があります
```language-bash
$ vagrant up
...
==> default: Exporting NFS shared folders...
==> default: Preparing to edit...
pythonではオブジェクトをjson文字列として出力したいとき、json_dump()を使用すると便利です
```language-python
import json
import sys
json.dump({'name': 'テスト'}, sys.stdout)
```
ですが、このコードを出力すると、下記のように日本...
JetBrainのDBツールであるDataGripでは、SQLを実行したときに最初の500のみを返してくれます。
通常はレスポンスが速くなるので500行ぐらいで十分なのですが、大量データを分析したいときにこのデフォルト値を変更したい場合があります。
結果セットの...
mongoDBからデータをcsv形式で出力したい場合、下記のようにmongoexportコマンドを使用すると良いです。
```language-bash
$ mongoexport --db DB_NAME --collection COLLECTION_NAME --csv --fields id,name,created_at > output.csv
```
PHPのfile_get_contents()では通常GETでリクエストを送信しますが、POSTでリクエストを投げたい場合があります。
このような場合はfile_get_contents()の第3引数を使えば良いです。
```language-php
linuxやmacのコマンドラインから、日付を取得したい場合dateコマンドを使うと便利です。
## YYYYMMDDHH24MISS形式で取得する
下記のコマンドで、年月日時分秒の値が取得できます。
```language-bash
date +'%Y%m%d%H%M%S'
20180616141949
```
...
macのsedコマンドでカンマをタブに置換したかったのですが、\tを指定してもtに置換されてしまう問題に遭遇しました。
```language-bash
cat foo.csv | sed -e "s/,/\t/g"
```
この問題を解消するには、"\t"の代わりにターミナルやvi上でキーボードの...
bashで単発で特定のコマンド群を実行したいときは、";"で各コマンドをつなぐことが多いですが、数が多い場合はbash関数の機能を使った方が見やすい。
## 処理を関数の形でまとめる
```language-bash
function func01() {
echo "==============...
gcloudコマンドでは`gcloud info`で認証情報をダンプさせることができます。この機能を利用して、以下のコマンドで認証情報中にあるプロジェクトのIDを環境変数にセットできます。
```language-bash
$ export GCP_PROJECT_ID=`gcloud info | grep "^Proj...
下記のコマンドでVagrantfile中にある"Vagrant"から始まる行の下に、定義を追加できます。
macで作業しているので、標準で入っているsed(BSDバージョン)ではなくgnu sedを使用しました。
```language-bash
brew install gnu-sed
gsed -i -e '/^Vag...
下記のクエリでインデックスの一覧を確認できる。
```language-sql
SELECT TABLE_NAME,
COLUMN_NAME,
CONSTRAINT_NAME,
REFERENCED_TABLE_NAME,
REFERENCED_COLUMN_NAME
FROM information_schema.KEY_CO...
## 日付列をYYYYMMDDHH24MISS形式で出力
```language-sql
select date_format(created_at, '%Y%m%d%H%i%s')
from TABLE;
```
## 日単位で件数をサマリーする
```language-sql
select date_format(created_at, '%Y%m%d'),
cou...
macでgitを使っていると、Untracked files:(バージョン管理外のファイル)として"Icon\r"が表示されることがあります。
```language-bash
$ git status
Untracked files:
(use "git add ..." to include in what will be committed)
"Icon\r...
Google Cloud Platform (gcp)で、プロジェクトを削除するには下記の手順を取れば良いです。
- プロジェクトを選択し`IAMと管理 -> 設定`をクリック
- `シャットダウン`のボタンをクリック
- 確認ダイアログが出るので、プロジェクトIDを入力し`シ...
MySQLでユーザの情報を取得する方法です。
## ユーザ一覧を取得する
```language-bash
SELECT User, Host, Password FROM mysql.user;
```
## ユーザ権限を確認する
```language-bash
SHOW GRANTS FOR root@'%';
SHOW GRANTS FOR root@localh...
phpではPSR-12というコーディング規約があります。作成したphpプログラムがPSR-12の規約に合致しているかをチェックしたい場合、`phpcs`コマンドを使うと便利です。
この記事では、composerでグローバルインストールすることで、コマンドラインからphpc...
## Mongo DBのデータ階層
```language-bash
Database -> collection -> document
```
MySQLだと、下記の構成になる
```language-bash
Database(schema) -> table -> row
```
## 接続
- localhostにユーザ認証せずに接続
```language-bash
...
macで`brew install git`コマンドでgitをインストースした場合、.bash_profileに下記の設定を書いておくと、コマンドの自動補完やプロンプトに作業中リポジトリのステータスが表示されるので便利です。
## 作業手順
エディタで.bash_profileを開きま...
macOSで、コマンドラインからVisual Studio Codeを"code"コマンドで起動できるようにする方法です。
昔は、.bash_profile等の編集が必要でしたが、現在はGUIから全部設定できます。
## 作業手順
エディタを起動して`Cmd + Shift + p`のショートカッ...
pythonでtf-idf処理を行う時によく利用される、TfidfVectorizer()には,単語ベクトルを成果するためにnormパラメータというものがあります。
今回、このnormの役割を確認するために、ソースコードを確認してみました。
## normパラメータの説明
公式...
pythonのscikit-learnライブラリには、tf/idf処理を行うTfidfVectorizer()という関数があります。
また、TfidfVectorizer()はtf-idf値の計算に内部的に TfidfTransformer()という関数を使用しています。
今回は、このTfidfTransformer()関数の仕様を...
macOSにmecab-ipadic-NEologdをインストールしたので、インストール時の手順を書いておきます。
デフォルト設定だと、インストールした辞書は/usr/local/lib/mecab/dic/mecab-ipadic-neologd/以下に作成されます。
## 実行した環境
今回のインス...
macOSでコマンドライン(cli)から、OSのバージョンを確認したい場合、`sw_vers`コマンドを使用します。
```language-bash
$ sw_vers
ProductName: Mac OS X
ProductVersion: 10.13.4
BuildVersion: 17E202
```
結果をシェルスクリプトなどで使い...
mecabの辞書であるmecab-ipadic-NEologdをインストールする時「unxz is not found.」がエラーが発生してインストールが失敗する場合があります。
## エラーの出力例
```language-bash
$ git clone --depth 1 https://github.com/neologd/mecab-ipadic...
MySQLのレプリケーションで、レプリケーション遅延がどれくらいあるか(追いついてきたか)を、毎分監視するためのスクリプトです。トラブルなどで大幅な遅延が発生して、追いつくのに時間がかかりそうな場合は、このスクリプトを実行してしばらく放っておく...
下記のコマンドでDBに存在する全テーブルのcountを取得できます
```language-bash
mysql --defaults-file=.my.cnf -e "select concat('select count(*) as cnt, ''', table_name, ''' as name from ', table_name, ' UNION ALL') from information_s...
sedでは`sed -e "s/before/after/g"`のように記載すると全ての行に対して文字列の置換を行うことがあります。
ですが、時にはファイルの最終行のみ置換したいなど処理範囲を指定したい場合があります。
このような場合はsedのアドレス指定の機能を使...
PHPでフォームに入力されたテキストを1行づつ処理させたい場合は、`str_replace()`と`explode()`関数を組み合わせると便利です
## サンプルプログラム
下記のプログラムは、GETパラメータで渡されたテキストを改行文字で区切って、1行づつ処理する...
MySQLではmysqlコマンドでDBに接続する時に、接続先DBの情報をコマンドラインのパラメータで指定することが多いです。
ですが、この他に`my.cnf`ファイルに接続情報を書いておき、記載のDBに接続する方法があります。
今回は、my.cnfファイルを作成...
pythonで対数を取る関数math.log()の使い方と、対数自体の概念のおさらいです。
特に対数は久しぶりに使うとなんの事だったか忘れてしまうので、順を追って分かりやすく説明しています。
## 対数を取る
pythonで対数の計算を行いたいときはmath.log...
JetBrainsのAll Products Packのライセンス料はWebサイトをみると下記の金額であると記載されいます。
```
法人ユーザ
US $649.00 / 初年度
US $519.00 / 2年目
US $389.00 / 3年目以降
個人ユーザ
US $249.00 / 初年度
US $199.00 / 2年目
U...
node.jsを使っていると、npmで下記のエラーが出力されることがあります。
```language-bash
npm WARN notice [SECURITY] open has 1 critical vulnerability.
Go here for more details: https://nodesecurity.io/advisories?search=open&version=0.0....
firebaseでは、コマンドライン(cli)からfirebaseの環境を操作するための、firebaseコマンドがあります。今回は、このfirebaseコマンドが使えるVMをコマンド1つで構築できるVagrantfileを作成しました。
## Vagrantfileの中身
以下の内容をVagrantfil...
Vagrantで`vagrant up`コマンドを使って仮想マシンを起動時に、以下のようなエラーメッセージ「A newer version of the box '...' for provider '...' is available!」が出ることがあります。
```language-bash
$ vagrant up
==> default: A newer ...
VirtualBoxでは、VirtualBox Guest AdditionsというものをゲストOSにインストールすることで、vmをより便利に使用することができます。
Vagrant経由でVirtualBoxを使っている場合、 vagrant-vbguestというプラグインを使用することで、このVirtualBox G...
Vagrantではvagrant-sshfsとういプラグインを使用することで、ホストOSとゲストOSのファイル同期にsshfsを使用することができます。
## インストール
vagrant-sshfsのインストールは、`vagrant plugin install`コマンドを使用します
```language-ba...
pythonでは、collections.Counter()を使って配列の各要素が何回出てきたかの度数分布を簡単に求めることができます。
自然言語処理(NLP)なので単語の出現頻度(word frequency)を求めたい場合、この機能を使うと便利です。
## プログラム
```languag...
オライリーのO'Reilly Japan Ebook Storeで電子書籍を購入したときに、領収書をもらう方法です。
電子書籍を購入すると、以下のメールが送信されてきます。
```
x月xx日
****************************************************************
この...
PayPalで決済処理を行おうとして、"より安全にログインしています..."から進まないときは、ブラウザのAd Blockプラグインが原因の可能性があります。
Ad Blockerを使っている場合は、一時的にOffにしてから再度決済してみてください。
pythonで一定時間プログラムをスリープさせたい場合は、time.sleep()を使用します。
## プログラム
```language-python
import time
print('start')
time.sleep(1)
print('1sec')
time.sleep(0.5)
print('1.5sec')
```
## 実行結果
プ...
pythonで文字を改行せずに出力するには、sys.stdoit.write()メソッドを使用します。
write()で出力した文字は、出力バッファリングされます。直ぐに出力したい場合はflush()を使用します。
## サンプルコード
下記のサンプルは、1秒に一回`.`を...
pythonでシェルから直接ワンライナーのプログラムを実行したい場合は、`-c`オプションを使用します。
```language-bash
$ python -c "print('hello world')"
hello world
```
mac版のVisual Studio Codeを使っていてエディタ上にcliのターミナルを使いたい場合、メニューの"表示 -> 統合ターミナル"から開くことができます。
(ショートカットキーは、`ctrl + shift + @`です)
統合ターミナルを選択すると、以下のように...
pythonでは他の言語で連想配列/ハッシュに相当するデータ構造として、辞書(Dictionary)型というものがあります。
pythonの辞書データを値の順や、キーの順でソートするサンプルコードを紹介します。
## サンプルコード
変数`data`に入ったデー...
macOS上でpythonからmecab-python3をインストールしようとしたら、エラー「mecab-config: command not found」が発生した
## 発生した事象と、解決の手順
まず、brewでmecabとmecab-ipadicをインストールする
```language-bash
brew install mecab...
pythonで文字列と数値を`+`演算子で連結すると、以下のようにTypeError: must be str, not intエラーが発生します
## エラー例
プログラム
```language-python
message = '1+1は' + (1+1) + 'です'
print(message)
```
エラー例
```language...
python3を使った数値計算に関する演算子です加減乗除は他の言語と同じなので、pythonならではのモノのみ記載します。
```language-python
# 割り算
# python3の時は、浮動小数で計算される(python2は端数が切られる)
print(3 / 2) # -> 1.5
...
pythonではtype()を使用することで変数のデータ型を確認できます。
## プログラム
```language-python
val = 1
print("- 1 -")
print(type(val))
val = 'a'
print("- 2 -")
print(type(val))
val = [1, 2, 3]
print("- 3 -")
print(type(...
pythonではpyenvを使うことで、python2系とpython3系を共存させることができます。
今回は、このpyenvをmacOSにインストールして、別バージョンのpythonをインストールしてみました。
## 実行環境
macOS High Sierra10.13.4
brewで、gitコマン...
iconvでShiftJISのファイルをutf8に変更しようとした時に、下記の`不正な入力シーケンスがあります`というエラーが発生しました。
```language-bash
$ cat input.txt | iconv -f SJIS -t UTF8
iconv: 位置 355200 に不正な入力シーケンスがあります
...
pythonを使って、指定されたファイルの内容全部を取得した上で、ファイル内に含まれる改行を取り除き、1行に連結するプログラムです。
## プログラム
```language-python
# test01.py
text = open("input.txt").read().replace('\n', ' ')
print...
Visual Studio Codeで開いているファイルに埋め込まれた制御文字(STX,ETXなど)を表示させるには、ユーザー設定に下記の項目を追加すれば良いです。
```language-yaml
"editor.renderControlCharacters": true,
```
ユーザ設定はMacの場合`cmd+,`...
PHPStormでは、IdeaVimプラグインを使うことでエディタをviキーバインドにすることができます。
プラグインをインストールしていたのに、いつのまにかviキーバインドが使えなくなっている場合、プラグインが無効化されている場合があります。
## 対...
投稿ナビゲーション