必要なツールがあれば,できるだけ作っていきたいので,コメント欄あたりに書き込むなりしてください.
今のところ,Mailinglist Archive形式のMLログサイトから関係を抽出するプログラム作りたい.
(2007-11-16 (金) 18:22:10)
mbox2mailcount.pl
mbox2mailcount.bat
入力:
mbox形式のメールアーカイブ
出力:
mboxに含まれるメールの数
フォーマット:ファイル名 メール数 ユニークメール送信者数(参加者数)
使用法:
perl mbox2mailcount.pl [filename1, filename2, ...]
(2007-06-01 (金) 12:24:08)
fixNetFile.pl
mbox から生成した .net ファイルを修正する
入力:
変換したい.netファイル
出力:
整形済み.netファイル
処理内容
1. アドレス名とエッジのソート (&renumbering)
2. 0エッジの削除 (&remove0arcs)
3. 自己ループの削除 (&removeLoops)
(2007-05-08 (火) 09:41:35)
mergeNetworksByName.pl
入力:
2つのネットワークファイル
出力:
.pajファイル(マージ済ネットワーク+パーティション情報)
パーティションの意味は以下のとおり
1:data1.netのみに属する
2:data2.netのみに属する
3:両方に属する
使用法:
perl mergeNetworksByName.pl data1.net data2.net
(2007-05-08 (火) 09:32:46)
生ファイルの視認性向上のためのツール
renumbering.pl
入力:
変換したい.netファイル
出力:
ソート済み.netファイル
(2007-01-12 (金) 09:41:02)
仕様はgRewCluTw.plと同じですが,メールアドレスの新旧対応表を元に生成します.
gRewCluTwSr.pl
(2007-01-12 (金) 07:17:51)
emailDupShrinker.plを用いて生成された新旧のEmailアドレス対応関係を用いて,シュリンクされた.netファイルを変換する.
networkShrinker.pl
入力:
変換したい.netファイルと,networkShrinker.plを用いて生成した新旧アドレス対応表
出力:
シュリンクされた.netファイル
使用法:
コマンドラインで、以下のコマンドをたたく(要 Perl 5 以上)
perl networkShrinker.pl data.net email_translate.txt
- 引数
- data.net シュリンクしたい.netファイル
- email_translate.txt アドレス対応表
(2007-01-12 (金) 07:13:54)
プログラム:
emailDupShrinker.pl
Email一覧から,@以前の文字列が(大文字小文字を無視して)同じであれば同一人物と判断し,最新のアドレスへの変換表を吐き出す.
入力:
Emailアドレス一覧(標準入力)
出力:
旧-新が対応付けられたemail関係リスト
使用法:
コマンドラインで、以下のコマンドをたたく(要 Perl 5 以上)
perl emailDupShrinker.pl < email_list.txt
(2006-12-29 (金) 04:51:37)
プログラム:
merge.pl
merge.txtの例:
merge.txt
時系列で変化を見るためには,複数の.netファイルをPajekで読み込まなければいけませんが,100個とか読み込むのは手間過ぎるので,単一の.pajファイルにすることで一気に読み込むことができます.# ただ,マクロとか使うなら,そっちでもできるので,このプログラムの意味があまりなくなります...
入力:
マージしたい複数の.netファイル.merge.txtに順番にファイル名を書いておく.
出力ファイル名は,プログラム中の$filenameという変数で指定しておく.
出力:
マージされた.pajファイル.
(2006-12-29 (金) 04:47:07)
プログラム:
degreecount.pl
ノード情報ファイルの例:
degreecount.txt
実行例:
perl degreecount.pl 10
ノード番号10番の人の次数推移を表示する.
入力:
引数に,表示したいノードのノード番号を与える.
degreecount.txtには,推移を見たい期間の.netファイルのリストを書いておく.
出力:
degreecount.txtのファイルそれぞれについて出次数をカウントしたリスト.
(2006-12-29 (金) 04:40:20)
プログラム:
mailcount.pl
実行例:
perl mailcount.pl
入力:
プログラム内で,$filenameという変数に,測定したい.net形式ファイルを直接指定する
出力:
countFrom_〜.txt,countTo_〜.txt,countAll_〜.txtの3ファイル.
それぞれ,全ノードにおける出次数,入次数,次数を多い順にソートして出力する.
(2006-12-29 (金) 04:31:16)
プログラム:
countMailNum.pl
実行例:
perl countMailNum.pl sample.net
単一の.netファイル内に記述されている,メールの送信回数を合計するプログラム.
.netファイルは月ごとになってるので,月ごとの推移とかが見れると思う.
(2006-12-29 (金) 04:26:43)
プログラム:
gRewCluTw.pl
allnode.txtの例:
allnode.txt
便利なバッチファイル:
rMAwCluTw.bat … 90日窓,30日ごとの.netファイルを吐き出す例
入力:
引数で与えられたmboxファイル形式のファイル(複数可)~
あらかじめ,ノード情報をallnode.txtというファイル名でおいておく必要がある(これは,下の単体用変換プログラムで全期間の関係をマージして出力された.net形式から手作業で抽出してください)
あと,プログラム内の $allnodecountという変数に,ノード数を書いておかないと,ちゃんと動かないです.
出力:
上記のファイルをマージして得たレスの関係を,Pajekの.net形式と.clu形式で吐き出す(ファイル名に+3が付加される)
(2006-12-29 (金) 04:20:22)
プログラム:
getRelationWithCluster.pl
便利なバッチファイル:
runMergeAllWithCluster_all.bat … 全期間をマージして吐き出す例
runMergeAllWithCluster.bat … 90日窓,30日ごとの.netファイルを吐き出す例
実行例:
perl getRelationWithCluster.pl 199503 199504 199505
入力:
引数で与えられたmboxファイル形式のファイル(複数可)
出力:
上記のファイルをマージして得たレスの関係を,Pajekの.net形式と.clu形式で吐き出す
(2006-12-29 (金) 03:06:29)
expander.pl
[1-5]みたいな値を引数に与えることで,それを展開したリストが吐き出されます.
ファイル一覧を作るときに,『[1995-2006]年[01-12]月』みたいなのを投げれ
ば,ファイル名一覧とかがサクサク生成できそうです.
投げ方は,こんな感じです.↓
perl expander.pl [1995-2006]年[01-12]月
上記の出力例:
1995年01月
1995年02月
1995年03月
・・・
1995年12月
1996年01月
1996年02月
・・・
2006年12月