2020-01-01から1年間の記事一覧

subversion から git への移行方法

Subversionのリポジトリをgitに移行する際の手順です本エントリはhttp://pyopyopyo.hatenablog.com/entry/2019/09/03/170000 に加筆したものです 手順1:subversion側の状況を確認する svnリポジトリの構造には2つのパターンがあります パターン1:trunk/t…

tarコマンドにファイルの一覧を渡す方法

ファイルのバックアップ等で,特定のパターンに合致するファイルだけを tar アーカイブに含める際によく使う方法を Tipsとしてまとめました ポイント tar コマンドの--files-from=FILE (省略形は -T FILE )を使う stdin からファイル一覧を与える場合は ta…

インストーラを使わずにdebianをインストールする方法(2020年版)

debian や fedora などの linux が稼働しているPCに,新しいHDDに接続して,そのHDDにdebian をインストールする方法をまとめますこの方法は installerを使うより早い (数分で新しい debain 環境が用意できます) 既存の設定のコピーが簡単 というメリットが…

Rのパッケージ管理

Rのパッケージ管理方法についてまとめます 初期設定 Rの本体は apt でインストール,必要なパッケージは自前でビルド&インストールする方法がおすすめです本体のインストール $ sudo apt install r-base-core 追加インストールするライブラリは $(HOME)/loc…

破損したデータベースを修復する方法 (sqlite3)

sqlite3 で以下のエラーが出る場合は,データベースを保存しているファイルが破損しています Error: database disk image is malformed ファイル破損の有無は以下のコマンドで確認できます ( mydata.db がデータベースのファイル名です) $ sqlite3 mydata.db…

Jupyter Notebook をPDFで保存する方法(日本語対応)

jupyter notebook の出力は pdf 形式で保存できますその方法は,画面左上の「メニュー」の「名前を付けてダウンロード」から「PDF via LaTeX (.pdf)」を選ぶだけ.ただし,この機能が正常に動作するためには LaTeX がインストールされていること 日本語用に…

bash で乱数を使う

2行でまとめると bash で乱数が必要な場合はシェル変数 RANDOM を参照します 生成される乱数の値域は,0から32767,分布は一様分布,になります 以下詳細. シェル変数 RANDOM bash で乱数が必要な場合はシェル変数 RANDOM を参照します echo $RANDOM シェル…

pythonでヒストグラムを正規化する

python でヒストグラムを正規化(面積を1.0にする)する方法です サンプルコード import numpy as np import matlplotlib.plt as plt data=[1,2,2,3,3,3,4,4,4,4] # 正規化されたヒストグラムを計算する hist, edges = np.histogram(data, density=True) w = e…

macOS に TexLive 2020 をインストールする

macOS の TeX環境を texlive2020 に更新したので手順をまとめます.この記事は以下のエントリを macOS と Tex Live 2020 に合わせて更新・加筆したものです. http://pyopyopyo.hatenablog.com/entry/2019/07/04/150000 http://pyopyopyo.hatenablog.com/ent…

pythonのヒアドキュメントと変数展開

python のヒアドキュメントの使い方をメモしますついでにpython-3.6で導入された f-strings を使って変数置換も行います x=123 y="ABC" tmp = f''' x is {x}. y is {y}. x is {x}. '''[1:-1] print(tmp) ポイント f"..." と文字列の先頭に "f"を付けると変数…

Linuxでディスプレイ解像度を自動切替する方法

Linuxでディスプレイ解像度を自動で切り替える方法です. ノートPCで外部モニタを使う場合 ノートPCでサスペンドから復帰後,解像度がおかしくなる場合 画面切替機(キーボードスイッチャ,パソコン切替器)を使っている場合 などに,毎回解像度を手動で設定し…

Pythonで文字列をDatetime型に変換する方法

Pythonで文字列を時刻に変換する方法です 時刻を表す文字列 時刻を表す文字列にはいくつかのフォーマット(書式)がありますISO8601の例 2020-06-14T13:04:46+09:00 RFC 3339の例 2020-06-14T04:04:46.000Z 2020-06-14T04:04:46.000000Z これらは全部同じ時…

Pythonでコマンドラインツール(CUIとかCLI)を作るときのTips

PythonでCUIとかCLIを作る際のTips です.下記の内容を順に書いていきます エラー表示を見やすくする 使い方の説明 実際のコード例 コマンドライン引数の処理 使い方の説明 実際のコード例 Tips は今後も追記していく予定です(最終更新: 2020-06-13) エラー…

Python で正規表現を使うときのエラー対策

正規表現を使うときは,正規表現のエラーチェックをきちんと実装しておいたほうが安全です例外を使って実装すると次のようになります import re pattern = "^c++" prog = None try: prog = re.compile(pattern) except re.error as msg: print("error in reg…

Python でインストール済みのdebianパッケージを調べる方法

debian や ubuntu でインストール済みのdebパッケージの一覧を調べる方法です(pythonのモジュールの一覧ではなくて,linuxのdebパッケージの一覧です)コマンドラインなら $ dpkg -l 等になりますが、似たことをpythonで実装する場合は apt モジュールを使い…

ワンライナーで動画編集 (ffmpeg の使い方一覧)

動画編集に便利な ffmpeg でよく使うワンライナーをまとめます.このエントリは今後も随時更新する予定です. ffmpeg の基本 動画を MP4形式に変換する $ ffmpeg -i 入力動画のファイル名 出力動画.mp4 入力は "-i 入力ファイル名"で指定します.ファイル形…

pythonでWebスクレイピングする方法

pythonでウェブページ(ホームページ)にアクセスして,必要な文字列だけ抽出する方法です.いわゆる Web scraping です.いくつか方法がありますが,今回は python で lxml モジュールを使いました. サンプルコード サンプルコードです.python 3 で動作し…

MySQLでSELECT文の出力を CSVファイルに保存する方法

多くの場合,MySQLはファイル出力(つまりファイルの新規作成&ファイルへの書き込み)を許可していません.理由はファイル出力を許可するとセキュリティ上の問題が出てくるからです.MySQLを使う場合は,先ず mysqld に接続して,mysqld 上でクエリを実行す…

デスクトップLinuxのサウンドをラズパイで再生する方法

デスクトップLinuxの音声出力を,Volumio のようなサウンドサーバーに転送&再生する方法です.転送には pulseaudio を使います.たとえば サウンドサーバとして, Volumioで動いている raspbery PI (つまり debianベースのLinux) デスクトップとして, debi…

2つのpdfファイルを重ねて一つのpdfファイルとして保存する

原稿 A.pdf に,別ファイル B.pdf の内容を重畳させて,新しいファイル C.pdf として保存する方法ですpdf形式で文章や印刷データを扱っていると 各ページに,フッターやヘッダーを自動で追加する pdf形式で作成したポスターに印刷&裁断用のトンボを付ける …