開始使用免費開始

哪一個州對市集最友善?

在探索農夫市集資料時,你想知道若將資料彙整到州的層級,會出現哪些模式。有些州是否比其他州更「市集友善」?為了調查這點,你將資料依州分組,並取得市集數的對數轉換(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_pop DataFrame 的各列。
  • 將標註放在各自散佈點旁邊。
  • 將標註文字大小降低為 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()
編輯並執行程式碼