Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Guiを使わないテキストデータ処理

163 views

Published on

Textual data processing without GUI

Published in: Data & Analytics
  • Be the first to comment

  • Be the first to like this

Guiを使わないテキストデータ処理

  1. 1. GUIを使わないテキスト データ処理のために GUI = グラフィカルユーザーインターフェース 2017-05-10 下野寿之 - 表題の事を同僚に10分で話すために作った8ページのスライド資料。 - 内容は、AWK, Perl, Ruby の説明になっている。 - Python は説明していない。
  2. 2. この文書に記載しないこと • コンパイラ言語について(C言語とかFortranとか) • 大規模開発のこと • SQL • Python
  3. 3. 目次 • AWK • Perl • Ruby • [補足事項] 環境開発
  4. 4. AWK • 空白文字で区切られたテキストデータを処理する。 • プログラミング言語としては、とても覚えやすい。 • ただし後述の言語に比べ簡単なことしか出来ない。 • GNU版のGAWKを使うことが望ましい。 • 区切り文字は –F で変更が可能。(コンマやタブに) • gawk –F ”¥t” ’{print $2,$3,$4*10}’ のように使う。 • 1977年に誕生。簡易性ゆえに長く使われている。
  5. 5. Perl • 文字列処理が得意。特に正規表現が得意。 • ある程度簡単なことならば、とても器用にプログラ ミングをしやすい。 • 1行プログラミング(one-liner, ワンライナー)が便利。 • 既によく安定している。Perl5は1994年から。 • プログラム内部からバージョン番号指定が出来る。 • perldocコマンドでマニュアルがすぐ参照できる。 • CPAN により、必要なライブラリをインストール。
  6. 6. Ruby • 日本人が作者。 • 各コマンドの理解がしやすい。 • 素人でも書きやすい(?) • ピリオド(.) でどんどん ”メソッド” を繋げていく。 • ネット情報を集めるクローリング使い易いかも。 • 2005年に出現したRuby Railsで使う人が増えた。
  7. 7. プログラムの例 (Ruby と Perl ) • オライリーの本を全部購入したらいくらかかるか http://qiita.com/zakuroishikuro/items/01391da495c28b9b0dd3 curl -s http://www.oreilly.co.jp/catalog/ | perl -lnE 's/.+"price">([d,]+).+/$1/ && (tr/,//d, $c++, $s+=$_); END{ say "合計 $c冊 $s円"}' http://yukidarake.hateblo.jp/entry/2016/05/09/192919
  8. 8. 開発環境 (補足) • UNIX/LINUX 環境は、強く推奨される。 • bash (シェルの一つ)はマスターすることが勧められる。 • ライブラリ(パッケージ、モジュール) の追加について : • Perl, Ruby, Python いずれも必要となる場合が多い。 • 環境改変を伴うので、はまりやすい。慣れが必要。 • 仮想環境の利用が望ましいが、これも慣れが必要。 • バージョン管理システム • Git または Mercurial のマスターが望ましい。

×