哪一個州對市集最友善?
在探索農夫市集資料時,你想知道若將資料彙整到州的層級,會出現哪些模式。有些州是否比其他州更「市集友善」?為了調查這點,你將資料依州分組,並取得市集數的對數轉換(log_markets)與各州人口數的對數轉換(log_pop)。
markets_and_pop = (markets
.groupby('state', as_index = False)
.agg({
'name': lambda d: log(len(d)),
'state_pop': lambda d: log(d.iloc[0]) })
.rename(columns = {
'name': 'log_markets',
'state_pop': 'log_pop' }))
為了視覺化,你決定使用迴歸圖來掌握市集數與人口數之間的「一般」關係,並搭配文字散佈圖以快速找出有趣的離群點。
本練習屬於課程
用 Python 改善你的資料視覺化
練習說明
- 迭代
markets_and_popDataFrame 的各列。 - 將標註放在各自散佈點旁邊。
- 將標註文字大小降低為
10點。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
g = sns.regplot(
"log_markets", "log_pop",
ci = False,
# Shrink scatter plot points
scatter_kws = {'s':2},
data = markets_and_pop)
# Iterate over the rows of the data
for _, row in markets_and_pop.____():
state, _, _, log_markets, log_pop = row
# Place annotation and reduce size for clarity
g.annotate(state, (____,____), ____ = ____)
plt.show()