タグ

perlとcsvに関するtsuyossiiのブックマーク (6)

  • 勝手に添削 - PerlによるCSVファイルの高速集計 2 : 404 Blog Not Found

    2007年03月07日01:00 カテゴリLightweight Languages 勝手に添削 - PerlによるCSVファイルの高速集計 2 前回に引き続き、今回も引き続きcodezineさんの添削。 添削後のコード #!/usr/local/bin/perl use strict; use warnings; use Text::CSV_XS; my ($rfh, $wfh, %name_of, %addr_of); my $tc = Text::CSV_XS->new({binary=>1}); # to handle non_ascii; my $addr_file = shift or help(); my $q_file = shift or help(); my $out_file = shift; open $rfh, "<", $addr_file or die "$a

    勝手に添削 - PerlによるCSVファイルの高速集計 2 : 404 Blog Not Found
  • TSV vs CSV : 404 Blog Not Found

    2006年05月27日00:20 カテゴリLightweight Languages TSV vs CSV その通りです、otsuneさん。 404 Blog Not Found:たった一つの冴えたMicrosoft製品 ItoGさんのコメント typo: tsv → csv otsuneさんのコメント >typo: tsv → csv tsvって「タブ区切りテキスト」のことだよね? 表計算をtextとしてpasteするとTSV(Tab Separated Values)に、ExcelText FileにsaveするとCSV(Comma Separated Values)になるのですが、私はTSV派です。 なんといっても、TSVの方が、圧倒的に処理が楽なのです。CSVは、実はきちんと処理するのが難しく、「CSVを処理するにはどうしたらいいの?」というのはPerlに限らず、スクリプト言語の

    TSV vs CSV : 404 Blog Not Found
  • Perl講座: ファイル入出力とデータ処理

    ここでは今まで学習してきたPerlの特長を活かして、下記の内容を、実際のデー タを利用して演習していきます。 ファイル入出力 行データの分割 分割データの検索、置換 使用するデータは下記の2種類です。それぞれの中身を見てください。 千葉市の2000年の公示地価:CSVファイル 千葉県の市町村名:テキストファイル 上記の1つ目のファイルは、各データがカンマ区切りで格納されたCSVファイルで す。1番目の項目には「中央」「市川」「酒々井」のように、市町村名の一 部か区名(千葉市のみ)が記入されてます(「酒々井」は「印旛郡酒々井町」で す)。また3番目の項目には市町村名以外の住所が記入されています。 ここで、達成すべき目標を明確にすると、

  • PerlによるCSVファイルの高速集計

    はじめに Perlと言えば、いまだにCGIを思い浮かべる人は多いと思います。しかし、Perlは決してそれだけの言語ではなく、その言語仕様はテキストファイルを処理し、集計結果をレポートするのに非常に向いています。特によく利用されるテキストファイルとして、CSV形式が挙げられます。CSVを集計したい場合、Excelに読み込ませて集計関数やマクロを駆使しているという人も多いかと思いますが、Perlを利用することで、高度な集計作業を簡単かつ高速にできます。 稿では、筆者がPerlCSV集計を行う際によく使うノウハウを紹介したいと思います。 対象読者 まだ、PerlCGIと思っている方。 65,536件を超える大量のCSVデータを前に、手も足も出なくなっている方。 必要な環境 テキストエディタ。 Perl 5.8.X。ただし、ほとんどのコードはそれ以下のバージョンでも動きます。 Perlのイン

    PerlによるCSVファイルの高速集計
  • PerlによるCSVファイルの高速集計 2

    CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

    PerlによるCSVファイルの高速集計 2
  • Perl and CSV

    CSV 形式の文字列を配列に分割する むかし日経MIXの awk 会議室で、CSV 形式の文字列を配列に分割するスクリプトが議論されていた。 それを perl で書くと、次のようなものだった。 sub splitcsv { local($csvstr) = @_; $csvstr .= ','; $csvstr =~ s/("([^"]|"")*"|[^,]*),/$1$;/g; $csvstr =~ s/"([^$;]*)"$;/$1$;/g; $csvstr =~ s/""/"/g; return split(/$;/, $csvstr); } ちょっと複雑でわかりにくいが、 $; という perl の特殊変数を使っていることに注目するとよい。 これは、「多次元配列のエミュレーションに用いる添え字セパレータ」[ウォールほか 1997 (1996): 150] である。 フィールドの区切

  • 1