人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

統計用プログラミング言語Rについての質問です。文字列(例えば、IPアドレス)がならんでいるテキストファイルがあったときにそれを読み込んで、どのIPアドレスが何個あるというのを手軽にRでやりたいのですが、どうするといいのでしょうか? IPアドレスのテキストファイルは、ip.csv とした例お願いします。read.csv('ip.csv',header=FALSE)で読み込んでからどうするといいのでしょうか?

●質問者: kaiketsu
●カテゴリ:コンピュータ 科学・統計資料
✍キーワード:CSV IP IPアドレス アドレス テキスト
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● Mook
●35ポイント

R は以前から興味があったので、試しがてらにやってみました。


いろいろとサイトやマニュアルを見てみましたが、数値の解析は得意な

ようですが、あまり文字列処理は得意ではないようです。

一応サンプルを作成してみましたが、ベタなループ処理で、R ならでは

処理にはなっていません(数値なら、hist などの関数が使えそうですが)。


また、csv といってもファイルにどのように格納されているかによって、

処理は変わってきますが今回は1行1アドレスが書かれたデータを想定しました。


ips<-read.csv('C:\\ip.csv',header=FALSE)

for( xx in unique(ips[,1]) ){
 cc <- 0
 for ( yy in ips[,1] ) {
 if( xx == yy ) {
 cc <- cc + 1
}
 }
 cat(xx,cc,"\n") 
}

で一応行ごとをデータとして、頻度をカウントします。

http://cse.naro.affrc.go.jp/takezawa/r-tips/r.html


他のサイトに hash を使った例がありましたので、こちらの方が処理が早いかもしれません。

http://siguniang.wordpress.com/2010/06/10/r%E6%96%87%E5%AD%97%E6...

◎質問者からの返答

うーん こんな単純なことなのですが、うまくできないのですね。。。。


2 ● azgrove
●35ポイント

ips というデータフレームにデータが入ってるなら

table(as.matrix(ips))

でできますよ

http://cse.naro.affrc.go.jp/takezawa/r-tips/r/61.html

◎質問者からの返答

IP アドレス 集計数 の形にしたいのですが、table だと、表になってできますね。なんでこんなに単純なことが難しいのだろう。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ