質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

2129閲覧

Python Twitterのツイートを取得し、DataFrameに格納する。

pon244

総合スコア59

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

1クリップ

投稿2020/07/16 07:46

【環境】
Python3,macbook pro , juputer notebook

【したいこと】
Twitter APIを使用して、検索KWを設定してTweetを取得、それをDataFrameに保存する。

import tweepy #TwitterのAPIの基本設定 import tweepy CONSUMER_KEY = "XXXX" CONSUMER_SECRET = "XXXX" ACCESS_TOKEN = "XXXX" ACCESS_TOKEN_SECRET = "XXXX" auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET) api = tweepy.API(auth ,wait_on_rate_limit = True) tweet_data = [] #取得したツイートを格納するリスト for tweet in api.search(q="映画 min_faves:500 min_retweets:500 exclude:retweets",tweet_mode='extended',count=10): try: tweet_data.append([tweet.id, tweet.user.screen_name]) except Exception as e: print(e) #データフレームを作成すr。 df_TW_Followers = pd.DataFrame() df_TW_Followers = pd.DataFrame(columns=["Tweet_ID",'User_name','Tweet_Date','Like','RT']) TwitterHandle=[] df_TW_Followers.TwitterHandle = TwitterHandle df_TW_Followers for i in tweet_data: try: df_TW_Followers.at["Tweet_ID"] = tweet.id df_TW_Followers.at["User_name"] = tweet.user.screen_name except: pass print("ALL done!")

【結果】
イメージ説明

【したいこと】
下記のリストのように、DataFrameに格納したいです

Tweet_IDUser_name
13xxxxTwitterhandlexxx
12xxxxTwitterhandlexxx

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

以下のように直接tweet_dataから作成できます。

Python

1import pandas as pd 2 3# ダミーデータ 4tweet_data = [] #取得したツイートを格納するリスト 5for tweet in [('123','hoge'), ('456','huga')]: 6 try: 7 #tweet_data.append([tweet.id, tweet.user.screen_name]) 8 tweet_data.append([tweet[0], tweet[1]]) 9 except Exception as e: 10 print(e) 11 12# リストからそのまま作成 13df = pd.DataFrame( tweet_data, columns=['Tweet_ID', 'User_name']) 14df['Tweet_Date'] = df['Like'] = df['RT'] = '' 15print(df) 16# Tweet_ID User_name Tweet_Date Like RT 17#0 123 hoge 18#1 456 huga

投稿2020/07/16 08:50

編集2020/07/16 08:53
can110

総合スコア38341

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pon244

2020/07/16 10:36 編集

できました! ありがとうございます!
can110

2020/07/16 10:34

tweet_dataを作りこむ部分は質問コードのままでかまいません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問