カテゴリ:   雑談・日記   マギアブレイク
タグ:

お勉強しよ

とりあえずさっきの記事で書いたみたいなTwitterの集計を俺もやってみたい(´・ω・`)!!!

っていう人は参考にしてね。備忘録ついでに書いとく。

最低でもExcelは準備しろいいな

■まず#マギアブレイク総選挙の全データをcsvあたりで持ってくる

(1)まずは1500ったーあたりで#マギアブレイク総選挙 のデータを全部引っ張ってくる。
 ※1500ったーの場合は1500件まで。それ以上は多分無料のツールじゃできないんじゃないかなぁ。全件csvで落とせるで、っていうツールなりサイトなりあったら是非教えてちょ。 

(2)CSVをexcelで開くとこんな感じ※一応IDと名前はぼかし
csv

(3)F列だけが欲しいので、他はいったん全部消す。

(4)「#マギアブレイク総選挙」内の雑談なんかを全部消したいので、とりあえずF列に「本文」みたいな見出しつけつつ、データ>フィルター>テキストフィルター>指定の値を含むを選ぶ。

excelの2010だとこう。
こう

今回の投票ツイートは必ず「リィネに投票!」だの「アスモデウスに投票!」だの、必ず「に投票」という文言が入っているので、逆を言えばそれが含まれていないツイートは無効票と見ることができるってわけ。

なので入力欄に「に投票」を入れてOK押す。



ここまでで生データの準備はOK。

一旦コピーして、別シートA列にデータペーストしたら悪魔データ(A)ってシート名つけとけ。



■悪魔名の抜き出し

余計なことをしない限り、今回の総選挙の投票ツイートは

(自由テキスト) (半角スペース) (悪魔名) + に投票! + #ハッシュタグ&URL

の形式のはず。

つまり
投稿
こうなってるから


投票2
こうしたいってわけ。

 

実際に関数書いてく。


まずは「に投票」より左側の文字列だけを抜粋する。

悪魔データ(A)のシートのA列にデータAが入っている状態で、B列に次の関数を入力
-------------------------------

=LEFT(A1,FIND("に投票!",A1)-1)

-------------------------------
これをオートフィルでB列全部に入れる

すると

(自由テキスト) + (悪魔名)

こうなるはず。


さっきの例だと
-------------------------------

あばばば 鉄鎖ヴァナルガンド


-------------------------------

だけ抜粋されてれば成功。


次に自由テキストと悪魔名の間に必ず半角スペースが入っていると思うので、半角スペースを基準に悪魔名を抜き出す。

上と同じやり方で半角スペースより右側を抜粋、ってすればいいだけのような気もするけど、やはりtwitterなのでそんな簡単にはいかない。
最大の問題は「自由テキスト欄に顔文字などで半角スペースが入ってることがある」こと。
なので↑と同じやり方でやると、綺麗に揃いきれないので、手作業でデータを整理していく必要が出てくる。


ここは少し工夫して「最後の半角スペースを基準に右側だけ抜き出す」という関数を使う。


ということでC列に以下の関数を入れる
-------------------------------

=RIGHT(B1,LEN(B1)-FIND(CHAR(9), SUBSTITUTE(B1," ",CHAR(9),SUM(LEN(B1),-1*LEN(SUBSTITUTE(B1," ",""))))))

-------------------------------

すると無事に悪魔名だけ抜き出せたはず。


-------------------------------

鉄鎖ヴァナルガンド


-------------------------------

こうなってれば成功。


★TIPS★

処理重くなりそうだからあまりお勧めはしないけど、一発で悪魔名だけ抜きたい、って場合。
悪魔データ(A)のシートのA列にデータAが入っている状態で、B列にこれ入れれば一発でいけるはず(↑の2個を複合しただけ)
-------------------------------

=RIGHT(LEFT(A1,FIND("に投票!",A1)-1),LEN(LEFT(A1,FIND("に投票!",A1)-1))-FIND(CHAR(9), SUBSTITUTE(LEFT(A1,FIND("に投票!",A1)-1)," ",CHAR(9),SUM(LEN(LEFT(A1,FIND("に投票!",A1)-1)),-1*LEN(SUBSTITUTE(LEFT(A1,FIND("に投票!",A1)-1)," ",""))))))

-------------------------------

うまいこと抜き出せたら、B列全部にオートフィルで適用させて、これで悪魔名の抽出追わり。

あとは関数のままだと気持ち悪いので、数値をコピーあたりで文字列として別シートに保存。 

これを悪魔データ(B)とする。

今の段階で

■悪魔データ(A):投票対象の本文全部
■悪魔データ(B):悪魔名だけ抜粋

こんな感じになってるかな?

一応、ユーザー側で半角スペース消してたりする例がごくまれにあるので、
目視で#Value!がないかチェックして、あれば手打ちで書き換えるとベター。

絶対数はそんな多くないはず(多分1~2件しかないかと。)

では、続けて集計。



■集計してみる
まず↑で作った悪魔データ(B)をさらにもう一つ別シートにコピー。

これを悪魔データ(C)とする。

悪魔データ(C)を開いて、

A列を選択してデータ>詳細設定>重複の削除 で悪魔の名前を一意のデータにする。

こういうこと 
一位のデータに


続けて、同じく悪魔データ(C)のB列に次の関数を入れる
 
-------------------------------

=COUNTIF('悪魔データ(B)'!A:A,A1)

-------------------------------

あとはこれをオートフィルで全部突っ込む

これで各悪魔の集計数が出たはず。 

完成
こうなれば成功

あとは適当に降順で並び替えて、グラフなり作ればOK
 

簡単やね。

慣れると10分もかかんないよ。


ぶっちゃけ、これくらいを自前でやれるようになると広告系の会社は一発で内定出ると思う。割とマジで。

割と適当に書いたから間違ってたらゴメンネ(๑≧౪≦)てへぺろ 

Comment & Trackbacks

コメント

 コメント一覧 (3)

    • 1. Djent
    • 2015年03月30日 20:29
    • 天才すぎやな。とりあえず浮気者の魔王様はお仕置きっ!お仕置きっ!
    • 2. (名無しのティリアさん)
    • 2015年03月31日 13:00
    • 慣れやで慣れ
      ペイルちゃんに投票しよ
    • 3. ルシフェル
    • 2015年03月31日 20:59
    • 5 さすがあ!
      こんなの何も知らないところから再現しようと思ったらツール探しから始めるから、半日使っちゃいそうッス。こんだけエクセル使えると気持ち良いだろうなあ。
      (;・∀・)
コメントフォーム
評価する
  • 1
  • 2
  • 3
  • 4
  • 5
  • リセット
  • 1
  • 2
  • 3
  • 4
  • 5
  • リセット

関連記事

新着一覧