Twitterフォロワーの分析をしよう(7)
Let’s analyze Twitter followers! (7)
让我们来分析Twitter的追随者!(7)
This contents is Japanese Only.
ようやく、データ分析ツールに取り掛かっています。
ここまででも十分ご苦労さん状態だと思いますが、まだ半分もきていません。
ここから本気のウヘー系の作業です。
現状の閾値
データ取得時の設定は「TwitterAnalyzeToolKit\TWTimeLineCapt」のsg.iniで定義されています。
現状の閾値はtwLatestFilterCounterが、「27」となっています。
各ユーザーの直近21の呟きを取得していますが、それらのつぶやきがプログラム起動時から27日以内に呟かれたものかをチェックしています。
1つでも27日以前にある場合は、Failに入ります。
twAnalysisCounterCountは「16」にしています。
「ツイートと返信」に16以上の呟きがあることを確認しています。
16以下のユーザーはFailに入ります。
閾値が「厳しいよ~」、または「もっと厳しくしたい」と思うなら、閾値を変更して再度実行します。
このときに再び数時間コースは辛いので、オフライン実行します。
「sg.ini」の値を変更して、既にあるデータでオフライン実行します。
オフライン実行の例ですが、IDをネットから取得しない、タイムラインをネットから取得しない、twLatestFilterCounterを25日に変更、twAnalysisCounterCountを14呟きに変更。
保存して変更したら、「TwitterAnalyzeToolKit\TWTimeLineCapt」ディレクトリで「TWTimeLineCapt.exe」をダブルクリックします。
ファイルは上書きされるので、閾値が変わったFailとTrueの仕分けができます。
現段階でのフォローする候補とフォローしないアカウントをまとめる
現段階での絶対にフォローしない方針のアカウントは、Analysis000Counter、Analysis001Counter、FailUserTimeRun.csvです。
前者二つは、おおよそ1日1ツイートを閾値に、活発にTwitterを使用していないアカウントだとみなすことができます。
後者の1つは全くタイムランが読み込めないなどで、どんなアカウントか知る由がありませんので、フォローしません。
この他にアラビア語圏のフォロワーも外させていただいております。
図式化すると以下になります。
現在は結果がバラバラになっている状態なので、フォローを外すアカウントをまとめていきます。
更に吟味を進めるアカウントは、フォローを外す以外のアカウントになるので、元々の「両思い+片思い+片思われ<日付>.csv」から、差分を取り算出します。
このときに使うのが「TextMarger」です。
「TwitterAnalyzeToolKit\TextMarger\IN」を開きます。
「IN」フォルダーがない場合は作成して、含まれるファイルを削除してください。
「TwitterAnalyzeToolKit\TextMarger\IN」フォルダは開いたままにしておきます。
別のエクスプローラで「TwitterAnalyzeToolKit\TWTimeLineCapt\Outs\Analysis000Counter」フォルダを開きます。
Analysis000Counterには、取得できたツイートが一定期間内かどうかを閾値にして、うまくいった、いかないアカウントのリストとタイムランに分類しています。
4つのファイルがあります。
TRUE.txtは既定数を満たしたアカウント、TRUELIST.csvは既定数を満たしたタイムラン(ツイートと返信)。セットになっています。
FALSE.txtは既定数に満たなかったアカウント、FALSELIST.csvは既定数に満たなかったタイムラン(ツイートと返信)。セットになっています。
FALSELIST.csvファイルを「TwitterAnalyzeToolKit\TextMarger\IN」フォルダに「一定期間のつぶやき不適合.txt」にリネームしてコピーします。
Excelで丁寧に確認することもできますが、Retarの場合は無理です。
一人ひとり確認もせず、アンフォローのリストにしていますが、やっぱり忍びないと思う方は、行単位で削除してあげてください。
エクスプローラで「TwitterAnalyzeToolKit\TWTimeLineCapt\Outs\Analysis001Counter」フォルダを開きます。
Analysis001Counterには、タイムランに一定数以上の呟きがあるかないかを調査しています。
4つのファイルがあります。
TRUE.txtは既定数を満たしたアカウント、TRUELIST.csvは既定数を満たしたタイムラン(ツイートと返信)。セットになっています。
FALSE.txtは既定数に満たなかったアカウント、FALSELIST.csvは既定数に満たなかったタイムラン(ツイートと返信)。セットになっています。
Excelで丁寧に確認することもできますが、Retarの場合は無理です。
一人ひとり確認もせず、アンフォローのリストにしていますが、やっぱり忍びないと思う方は、行単位で削除してあげてください。
「TwitterAnalyzeToolKit\TWTimeLineCapt\Outs」フォルダに移り、「FailUserTimeRun.csv」ファイルを「TwitterAnalyzeToolKit\TextMarger\IN」フォルダにコピーして、「アクセス不能不適合.csv」にリネームします。
タイムランにアクセスできないので、ScreenNameがわかりません。
別のAPIを使えば取得できるみたいですが、ブロックした相手も含まれるので、興味がないのでみません。
以上の3つのファイルが、フォローしない対象のリストになります。
特定言語のアカウントを排除対象にする。
申し訳ありませんがアラビア語圏のツイートを排除します。
「TwitterAnalyzeToolKit\TWTimeLineCapt\Outs」フォルダに移り、UserTimeRun.csvファイルをExcelで開きます。
Language列を選択し、データタブを選択します。
昇順をクリックします。「選択範囲を拡張する」がでるので、拡張して並べ替えてください。
昇順に並びました。
排除対象ファイルを作る
文字コードをUNICODEにしなくてはいけないのですが、面倒なのでコピーして作ります。
「TwitterAnalyzeToolKit\TextMarger\IN」にある「アクセス不能不適合.csv」をコピーしてあげると「アクセス不能不適合 – コピー.csv」ができます。
「特定言語不適合.csv」にリネームします。
「特定言語不適合.csv」を編集します。
今のところは、「アクセス不能不適合.csv」と同じなので、そのままではただの重複になって意味がありません。
Editorで開いたらテキストを全選択して全部を消去します。
右下のUniCode、CRLFの表示がそのままである点を確認しておき、ファイルはそのまま開いておきます。
Languageが「ar」はアラビア語圏のツイートです。
Excelで対象のアカウントのUser.idを選択し、ペーストします。
IDは重複していますが、プログラムが自動的に重複を直してくれますので、消したいと思うIDを連結して並べてしまいます。
作業が完了したら、保存して終了します。
削除対象リスト第一弾を作成
削除対象リストを作成します。
現状の4つのファイルは灰色の部分のファイルになります。
現状では、IDが重複しているので、削除対象リストにします。
「TwitterAnalyzeToolKit\TextMarger」フォルダに移動します。
Outsフォルダがないことを確認して、「TextManager.exe」をダブルクリックして実行します。
「TwitterAnalyzeToolKit\TextMarger\Outs」フォルダに入り、MERGE.csvが取得対象ファイルになります。
「MERGE.csv」ファイルを「削除対象第一弾.csv」にリネームします。
ファイルの整理
「TwitterAnalyzeToolKit\Save\<日付>」フォルダを開き、さきほどの入力ファイルを保管します。
「TwitterAnalyzeToolKit\TextMarger\IN」から「特定言語不適合.csv」、「つぶやき数不適合.txt」、「一定期間のつぶやき不適合.txt」、「アクセス不能不適合.csv」を移動させます。
また、「TwitterAnalyzeToolKit\TextMarger\OUT」から「削除対象第一弾.csv」を移動させます。
作業を完了させると、昨日の続きで「TwitterAnalyzeToolKit\Save\<日付>」フォルダには11個のファイルが保管されていると思います。
ファイルを削除するのは簡単ですが、また作るのは骨の折れる仕事です。
苦労して作ったものは取っておくのが基本です。
ファイルを退避させたあとは「TwitterAnalyzeToolKit\TextMarger\IN」フォルダの中身を空にして、「TwitterAnalyzeToolKit\TextMarger\OUT」フォルダを削除します。
続きは、また次回に・・・。
相場分析のリクエストがありましたら“Contact Us”からお知らせください。ご要望にお応えできるように努力いたします。
このブログはあくまでも個人的な見解であり、投資判断は各自でお願い致します。当ブログは一切の投資損益に対する責任を負いません。
ブログに来て下さってありがとうございます。明日もよろしくお願いいたします。
If you have some request to analyze, please write to “Contact Us”.
We do best effort for your request.
These are only personal opinions on this blog, and you need the investment judgment in each one. This blog doesn’t assume the responsibility to all the investment profit and loss.
Thank for watching our contents. My best regards next day.
如果您需要行情分析,请点击“Contact Us”联系我们。我们将尽力满足您的要求。
本博客仅为个人意见,请各自做出投资判断。本博客概不对任何投资盈亏负责。
感谢您访问本博客。欢迎再次使用。