タプル型で、横幅、縦幅の順に指定できる。出力結果は以下のようになります。次に、フォロワー数の増加数を棒グラフで取得します。増加数が書いてあるデータはfollower_increaseという列に入っているので、そのデータを呼び出して、棒グラフで表示します。August")4-8月のツイートデータの結合するフォロワーのデータをみたところで、今度は4-8月分のツイートのデータを結合します。今複数ファイルになっているので、一つにまとめます。4-8月のデータを読み込みましょう。pd.read_csv("august.csv")これらのデータフレームを、一つにまとめる方法として、Pandasのconcatメソッドがあります。複数のデータフレームを、一つにまとめるメソッドです。(画像は下記記事から引用しています。)くわしくはこちらの記事を見るとよくわかると思います。エントリになってしまった。一緒にするデータフレームを一つの配列に代入します。jul_df,august_df]その後、concatメソッドを利用して、データを結合します。合成したデータフレームを、時間の早いものから順番に並べたいので、sort_valuesメソッドを利用します。どの列名を基準に並び替えるかを決める・ascending:降順にしたい場合は引数をFalse、デフォルトだと昇順になっています。pandas.Seriesをソート(並び替え)するには、sort_values(),note.nkmk.meここまでの流れを一気にやると、こんな感じになります。pd.concat(combine).sort_values(by="時間")tweets_df.head()また、ちゃんと結合されたかを確認したいので、最終行を確認します。先頭行はheadで確認できましたが、最終行はtailで確認できます。tweets_df.tail()分析に必要なデータだけ抜き出すさて、今ツイッターアナリティクス上から取得したデータがすべて表示されています。今回のデータの分析で必要なのは以下の通りです。必要なデータだけを取得するため、tweets_dfに再度代入し、表示します。"URLクリック数"]]tweets_df.head()さて、時系列で取得したいので、再度時間でソートしてあげます。tweets_df.sort_values(by="時間")URLが存在するかどうかを判断するデータを作成しようさて、ツイートの中にURLがあるツイートは、もしかしたら「有用だからほかの人にシェアしたい!」って思ってRTされる数が増えたりするかもしれないですよね。そこで、ツイートごとにURLが存在するかを0,1で入力できる特徴量を作成します。・tweets_dfの中の「ツイート本文」という列名の値に、「https]というキーワードが入っていたら1,はいっていなければ0を入力した「has_url」という新しい列名を作成し、その中に0,1の値をすべて入れるという処理です。ツイート本文.str.contains("http").astype(int)tweets_df.head()詳しく説明すると、こうなります。・新しくtweets_df["has_url"]とすることで、新しい列名を作成できるので、作成したものに代入するような形にする。「tweets_df.ツイート本文」で、ツイートの列名にアクセスします。Falseの場合は0を返すastypeメソッドで、引数を整数(int)で返す処理をしています。同様に、最後の行も確認します。tweets_df.tail()さて、全体でどれだけURLつきのツイートをしているのかを確認しましょう。その際に使えるのが、value_countsメソッドです。value_countsメソッドは、データの個数が瞬時にわかるメソッドです。なしが1102ということが分かりました。次に箇条書きツイートがRT数を伸ばす説があるので、これも特徴量として取得してみましょう。さきほどと同様に見てみます。tweets_df.ツイート本文.str.contains("・")tweets_df["has_point"].value_counts()なるほど、箇条書きツイートは219に対して、なしが1915。確かに毎回箇条書きツイートをしていたら、なんか偉そうでキモイですね。頻度としてはそれくらいなんだろうなぁというのが妥当な感じです。「おすすめ」というキーワードが存在するかを0,1で分け、集計してみます。グラフで可視化します。title="recommendation")ツイートの文字数を確認さて、今度はツイートの文字数が多ければ多いほど、リツイートされやすいかもしれないという説を検証するために、文字数を取得します。文字数を確認するには、データフレーム.列名.str.len()で文字数を返してくれます。tweets_df.ツイート本文.str.len()取得したツイートの文字数が全体でどんなものなのか、今度はヒストグラムに表示してみましょう。length")どうやら、話が長いようですね。平均を取る場合は、データフレーム.列名.mean()で取得できます。(meanは平均という意味です)tweets_df.tweets_len.mean()平均文字数は92文字らしいですね。改行されているか確認する次に、画面いっぱいだとクリックされやすい説を検証するために、改行コードの有無をデータで取得してみたいと思います。tweets_df.ツイート本文.str.count("\n")tweets_df["nl_count"].value_counts()結果がこんな感じです。実際どのくらい改行されているのか、棒グラフに可視化してみましょう。Code")大体改行するにしても3つくらいみたいですね。リツイートされやすいツイートの特徴を分析しようさてさて、フォロワー数が伸びる場合、リツイートがたくさんされているときが伸びやすいのは分かります。興味をもってプロフィールをクリックしてくれたら、そのあとフォローしてくれる確率も増えそうですよね。購入済みの方はログインしてください記事を購入する【Pythonによるデータ分析1】Pythonでツイッターのオリジナルデータから、拡散されやすいツイートを分析してみよう!Dai2,980円3人がオススメしています売り切れこの記事が気に入ったら、サポートをしてみませんか?気軽にクリエイターを支援できます。サポートでいただいたお金はFanzaの動画を購入するために利用されます。プログラミング初心者が、自分自身でプロダクトを作れるようになれる技術チュートリアル・試行錯誤した結果などを記事にまとめています。企画は最初からみんなで作ってはいけない理由34Dai2019年の振り返りと、2020年の目標25Dai待遇も人もいいけれど、何か物足りないという病。「1%のファンに愛される力」のすごさを計算してみたら普通にヤバかった。Scriptを利用して、役に立つアプリケーションを作成する方法をまとめています。クリエイターへのお問合せnoteカイゼン目安箱クリエイターの。