☆☆ 新着記事 ☆☆
2019年5月12日日曜日
Pandasのデータフレームに使う小技
pandasのデータフレームを操作する時によく使う小技をまとめておきます。
◇ラベルの追加
tweet_df = pd.DataFrame(data=[[tweet.created_at,tweet.full_text,tweet.favorite_count,tweet.retweet_count] for tweet in tweets],
columns=['Date','Tweet','Like','RT'])
tweet_df['SA'] = np.array([ analize_sentiment(tweet) for tweet in tweet_df['Tweet'] ])
◇ソート
tweet_df_sorted = tweet_df.sort_values('RT', ascending=False)
注)ソートすると、Index番号自身もソートされてしまう。
(ソート前)
Date
0 2019-05-30 11:21:45
1 2019-05-30 00:59:43
2 2019-05-30 00:46:39
3 2019-05-30 00:32:06
4 2019-05-29 17:23:55
(ソート後)
Date
3 2019-05-30 00:32:06
1 2019-05-30 00:59:43
2 2019-05-30 00:46:39
0 2019-05-30 11:21:45
4 2019-05-29 17:23:55
◇重複データの抽出・削除
duplicated()メソッド:
デフォルトは全部一致の場合、重複と判断。 列を指定して判断する場合、
print(tweet_df.duplicated(subset='RT'))
(Output)
45 False
66 False
75 True
93 True
37 True
69 True
重複しているデータの1つ目は、重複していないものとしてFalseが返される。
◇重複データの削除
print(df.drop_duplicates(subset='RT'))
Date Tweet Like RT SA
38 2019-05-12 06:07:30 RT @LindseyGrahamSC: Will stand behind Preside... 0 6959 1
23 2019-05-12 06:08:40 RT @LindseyGrahamSC: When it comes to China, t... 0 5875 1
56 2019-05-12 06:05:45 RT @PalmerReport: This is an actual sentence f... 0 5845 1
26 2019-05-12 06:08:24 RT @danpfeiffer: Trump is engaged in an unprec... 0 1353 1
◇Columnを指定してPrintout
print(df['Tweet'])
38 RT @LindseyGrahamSC: Will stand behind Preside...
23 RT @LindseyGrahamSC: When it comes to China, t...
56 RT @PalmerReport: This is an actual sentence f...
26 RT @danpfeiffer: Trump is engaged in an unprec...
◇pandas フレームワークの要素の表示
(htmlでの記述)
◇ Latest tweet by President Trump
<p>{{tweet_df.iloc[0].Date}}</p>
<p>{{tweet_df.iloc[0].Tweet}}</p>
<p><span class="text-primary"><i class="fas fa-heart"></i></span> {{tweet_df.iloc[0].Like}}
<span class="text-primary"><i class="fas fa-retweet"></i></span>{{tweet_df.iloc[0].RT}}</p>
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿