たつをの ChangeLog : 2013-03-22

2013年3月22日のヲハニュースをお届けします。

woha

新発売のEOS Kiss X7のボディサイズが幅がiPhone5以下というありえないサイズ:[mi]みたいもん!
これは!!!

Canon デジタル一眼レフカメラ EOS Kiss X7 ボディー KISSX7-BODY


グーグル、メモ作成サービス「Google Keep」をリリース - CNET Japan
これはすぐ終わると思う。Google Drive のトップからたどれないのが意味不明。

僕がLINEを使わない3つの理由 - カイ士伝
複数端末でログインできてデータも同期しつつ、パソコンでも使えるチャットアプリって意外とない
「振り込め詐欺」の新名称募集について :警視庁
金払え詐欺。

NFCタグシール(NFC Tag・丸型・Circus・20枚セット) 300-NFC001【サンワサプライ直営 | サンワダイレクト】
気になる。

3年ほど前に恵比寿ガーデンプレイスのマクドナルドが閉店してから、恵比寿地域にはマクドナルドがゼロという状態が続いていました。しかし、本日、恵比寿駅のそばに新たにマクドナルドがオープンしました!

本日オープン!恵比寿駅そばのマクドナルド! 3/22
(↑さっそく今朝行ってきました!)

JR恵比寿駅の西口改札を出て右折し外に出たらすぐ右手。ほんと駅のそばです。

恵比寿マクドナルドの場所

1階は狭いですが、2階に上がるとかなり広い空間が広がっています。ガーデンプレイスにあった店舗よりも断然広いです。1階だけでなく、2階にもレジがあります(マックカフェ)。

jQuery Mobile を使ってちょっと作業したので将来の自分のためにテンプレート化して残しておく。

jqm

HTMLのテンプレート(サンプル):
http://chalow.net/misc/jquerymobile-sample.html

ソース:
<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" href="https://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.css" />
    <script src="https://code.jquery.com/jquery-1.9.1.min.js"></script>
    <script src="https://code.jquery.com/mobile/1.3.0/jquery.mobile-1.3.0.min.js"></script>
    <title>サンプル</title>
  </head>
  <body>
    <div data-role="page" id="foo">
      <div data-role="panel" id="mypanel">
        <p>パネル</p>
        <p>中身</p>
      </div>
      <div data-role="header" data-position="fixed">
        <h1>ヘッダー</h1>
      </div>
      <div data-role="content">
        コンテンツ
        <a href="#" data-role="button" data-icon="star"
           data-theme="b">ボタン</a>
        <a href="#mypanel" data-role="button">パネル</a>
        <a href="#popupBasic" data-rel="popup" data-role="button"
           data-transition="pop">ポップアップ</a>
        <div data-role="popup" id="popupBasic">
          <p>ポップアップ</p><p>中身</p>
        </div>
        <div data-role="collapsible-set" data-inset="false"
             data-content-theme="d">
          <div data-role="collapsible">
            <h3>アコーディオン</h3>
            <p>中身</p>
          </div>
          <div data-role="collapsible">
            <h3>アコーディオン</h3>
            <ul data-role="listview">
              <li>リスト</li>
              <li>リスト</li>
              <li>リスト</li>
            </ul>
          </div>
          <div data-role="collapsible">
            <h3>アコーディオン</h3>
            <p>中身</p>
          </div>
        </div>
      </div>
      <div data-role="footer" data-id="foo1" data-position="fixed">
        <div data-role="navbar">
          <ul>
            <li><a href="#bar">リンク</a></li>
            <li><a href="#bar">リンク</a></li>
            <li><a href="#bar">リンク</a></li>
          </ul>
        </div>
      </div>
    </div>
    <div data-role="page" id="bar">
      <div data-role="header">
        <h1>マルチページ</h1>
      </div>
      <div data-role="content">
        <a href="#foo" data-role="button" data-icon="check">戻る</a>
      </div>
    </div>
  </body>
</html>

コメント:
- jsやcssは「jQuery CDN」から最新のバージョンを選択。
- いろんな部品の使い方は「jQuery Mobile Demos」を参照。
- 前掲のテンプレートは Demos→Pages をベースにした。

リンク:
- jQuery Mobile http://jquerymobile.com/
- jQuery Mobile Demos http://view.jquerymobile.com/1.3.0/
- jQuery CDN - provided by (mt) Media Temple http://code.jquery.com/

全ツイート履歴が取得できるようになったので、取ってきて軽く分析(というほどでもないが)してみた。

Twitter 2007.3.24 yto
(↑一番最初の発言は2007年3月24日)

「全ツイート履歴」の詳細は下記の記事を参照されたし:
- 日本の皆さんにも「全ツイート履歴」が使えるようになりました (Twitterブログ)
http://blog.jp.twitter.com/2013/03/blog-post_22.html

ダウンロードした中に含まれているファイル「tweets.csv」に全ツイートが入っている。
文字コードはUTF-8。
フォーマットはCSV:
- 必ずダブルクォートで閉じられている律儀なCVS。
- ダブルクォート内に改行コードが入ってる。

■各カラム:
0tweet_id
1in_reply_to_status_id
2in_reply_to_user_id
3retweeted_status_id
4retweeted_status_user_id
5timestamp
6source
7text
8-expanded_urls

データ例


例1:リプライ。
(0) 196963653910675456
(1) 196962499604643840
(2) 54396210
(3) -
(4) -
(5) 2012-04-30 14:06:09 +0000
(6) <a href="http://stone.com/Twittelator" rel="nofollow">Twittelator</a>
(7) @TanakaApple ついでに「すぐに家に帰ってしまう区」も考えてください

例2:公式RT。
(0) 196078945374965760
(1) -
(2) -
(3) 196076541166354432
(4) 5329012
(5) 2012-04-28 03:30:38 +0000
(6) <a href="http://stone.com/Twittelator" rel="nofollow">Twittelator</a>
(7) RT @pinkmac: 【速報】夫のこども手当使い込み疑惑が浮上

例3:URL複数付き
(0) 80072148634447873
(1) -
(2) -
(3) -
(4) -
(5) 2011-06-13 00:41:02 +0000
(6) <a href="http://twitter.com/tweetbutton" rel="nofollow">Tweet Button</a>
(7) 愛知学院大学歯学部付属病院小児科にあるそう http://t.co/Hlfukd6 >
 歯医者に置いてあるドラえもんが怖すぎる件... http://t.co/wGeRw9v
(8) http://chalow.net/2007-06-25-3.html
(9) http://twitpic.com/5aehqd

ざっくり処理するための Perl 雛形


コード (tweetscsv.pl):
#!/usr/bin/perl
use strict;
use warnings;

my $all = join("", <>);
$all =~ s/([^"])\n/$1 /g;

foreach (split(/\n/, $all)) {
    my @c = split_csv($_);
    print join("\n", map {"($_) $c[$_]"} 
       grep {$c[$_] ne '"'}  0..$#c)."\n";
}

sub split_csv {
    my ($s) = @_;
    $s =~ s/""/\x07\x08/g;
    my @rv = ("$s," =~ /("[^"]+"|[^,]+|),/g);
    return map {s/^"(.*)"$/$1/g; s/\x07\x08/"/g; $_} @rv;
}

使い方:
% ./tweetscsv.pl tweets.csv

出力の一部:
(0) 37441352706826240
(5) 2011-02-15 09:21:28 +0000
(6) <a href="http://tou.ch/" rel="nofollow">ロケタッチ(loctouch)</a>
(7) おうちにむかう @ 東京メトロ日比谷線 恵比寿駅にタッチ! http://tou.ch/VOYsCz
(0) 37365786729254912
(5) 2011-02-15 04:21:12 +0000
(6) <a href="http://www.hatena.ne.jp/guide/twitter" rel="nofollow">Hatena</a>
(7) きのこる先生 / http://f.hatena.ne.... - 2008年の抱負 - yto - はてなハイク http://htn.to/PkN5LY
(0) 37365231462264832
(3) 36344413101760512
(4) 207566268
(5) 2011-02-15 04:19:00 +0000
(6) web
(7) RT @aknmssm: なんでも文末に「大手メディアはなぜ報じないのだろう?」とつけるといきなり社会派なツイートになる運動を実施しています。この運動をなぜ大手メディアは報じないのか。

下記記事のコードを参考にした:
- [を] PerlによるCSVの読み込みとCSVをTSVに変換するワンライナー[2012-03-09-1]

集計例


前述のプログラムを用いてざっくり集計。

例1:よく使う source ランキング。
順位回数source
15119web
23828twitterfeed
33582Twittelator
42446Flickr
52066Hatena
6970movatwitter
7965Twittelator
8763Twitter
9754Buffer
10724NatsuLiphone
% ./tweetscsv.pl tweets.csv | grep '^(6)'| cut -c5- | sort | uniq -c | sort -nr | head -20

例2:リプライと公式RTの割合。
全ツイート数105959
リプライ率0.016 (1.6%) = 1712/105959
公式RT率0.013 (1.3%) = 1378/105959
% ./tweetscsv.pl tweets.csv | wc -l
105959
% ./tweetscsv.pl tweets.csv | grep '^(3) [1-9]'| wc -l
1712
% ./tweetscsv.pl tweets.csv | grep '^(1) [1-9]'| wc -l
1378

例3:よくリプライするユーザランキング。
順位回数User IDScreenName
16810228272@YouTube
26715315186@riskyspeeder
3512067431@yto
44814512408@yozora2
54516323986@mirai2008
6342067291@kogure
7307178212@wada_akiko
8245550762@yomoyomo
92214484428@makipapa
102169835788@erumoamere
% ./tweetscsv.pl tweets.csv  | grep '^(2) [0-9]'| cut -c5- | sort | uniq -c | sort -nr | head

おまけ:形態素解析して名詞だけカウントしたのち意味のありそうなのだけ取り出したランキング。
順位頻度単語(名詞)
181038とら
25827恵比寿
26769iPhone
28688ブログ
42372発言小町
43371
45364
48345
49342東京
※ちなみに1位は「http」。他の20位以内の語は「4」などの数字一文字や「co」などのURLの一部。ゴミ抜き処理してないので。
この記事に言及しているこのブログ内の記事

今週の平日のランチの記録。

平日ランチ

■3/18(月) お弁当

社内売り弁当。

■3/19(火) お弁当

フォーの店 PHONAM のお弁当。鶏肉とカシューナッツの野菜炒め丼。500円。

■3/20(水) 自宅

祝日。自宅で納豆とメカブと豆腐を混ぜたやつと白米。写真なし。

■3/21(木) お弁当

社内売り弁当。石巻爆速復興弁当(さんま天丼)[2012-09-20-1]

■3/22(金) ラーメン

めんや 参◯伍[2010-03-26-2]で参◯伍郎らーめん。

たつをの ChangeLog
Powered by chalow