リストに格納されたデータから、特定の月と日付以降のデータを抜き出したいです。
よろしくお願いします。
以下の例ではどのようなコードを書けばいいでしょうか。
【例】
2015-10-16から2018-12-03までのデータがあるとして、その中から
2017-01-01から2018-01-01までのデータを抜き出す。
↓すべての範囲のデータを取得することはできました。
Python3
1import tweepy 2import csv 3import datetime 4import pandas as pd 5import numpy as np 6 7consumer_key = "" 8consumer_secret = "" 9access_key = "" 10access_secret = "" 11 12 13auth = tweepy.OAuthHandler(consumer_key, consumer_secret) 14auth.set_access_token(access_key, access_secret) 15api = tweepy.API(auth) 16 17#ツイート取得 18tweet_data = [] 19 20for tweet in tweepy.Cursor(api.user_timeline,screen_name='アカウント名').items(): 21 tweet_data.append([tweet.created_at,tweet.text.replace('\n',''),tweet.favorite_count,tweet.retweet_count]) 22print(tweet_data)
実行結果
[[datetime.datetime(2018, 12, 3, 9, 23), 'ツイート内容', 0, 26],…… ……[datetime.datetime(2015, 10, 16, 06, 31, 32), 'ツイート内容, 174, 162]] created_at text fav RT 0 2018-12-03 09:23:00 'ツイート内容' 0 26 1 2018-12-03 03:00:14 ... 36 ... ... ... ... 2110 2015-10-16 12:01:36 ... 25 2111 2015-10-16 06:31:32 ... 162 [2112 rows x 4 columns]
しかし、日付で期間を区切って抜き出そうとするとエラーが出ます
Python3
1… 2 3#ツイート取得 4tweet_data = [] 5 6for tweet in tweepy.Cursor(api.user_timeline,screen_name='アカウント名').items(): 7 tweet_data.append([tweet.created_at,tweet.text.replace('\n',''),tweet.favorite_count,tweet.retweet_count]) 8df = pd.DataFrame(tweet_data) 9print(df['2017-1-1':'2018-1-1']) 10print(tweet_data)
エラーメッセージ(実行結果)
Python3
1TypeError: cannot do slice indexing on <class 'pandas.core.indexes.range.RangeIndex'> with these indexers [2017-1-1] of <class 'str'> 2
前提・実現したいこと
2015-10-16から2018-12-03までのデータがあるとして、その中から2017-01-01から2018-01-01までのデータを抜き出す。
実現したい実行結果
Python3
1[[datetime.datetime(2018, 1, 1, 9, 23), 'ツイート内容', 0, 22],…… 2……[datetime.datetime(2017, 1, 1, 07, 31, 32), 'ツイート内容, 4, 12]] 3 4 created_at text fav RT 50 2018-01-01 09:23:00 'ツイート内容' 0 22 61 2017-12-31 03:00:14 ... 24 7... ... ... ... 8890 2017-01-03 12:00:36 ... 21 9891 2017-01-01 07:31:32 ... 12 10 11[891 rows x 4 columns]
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/12/04 09:13