グループby すると、DFの「地区名」にある名前からグループ分けして、
この場合は平均を求めてくれる、以下は参考例
df_mean = df.groupby('地区名').mean()
取引価格(総額) 坪単価 面積(㎡) 取引価格(㎡単価) 地区名 佃 4.877778e+07 2.609899e+06 58.333333 7.908784e+05 入船 2.700000e+07 1.862142e+06 45.000000 5.642855e+05 八丁堀 2.000000e+07 2.639999e+06 25.000000 8.000000e+05 勝どき 3.091667e+07 1.666454e+06 57.083333 5.049862e+05 新富 2.710000e+07 1.831499e+06 44.000000 5.549998e+05
例えば坪単価のランキングにしたい場合は降順にするのでascendin=Flaseで
sortすれば良いので以下のようにする
df_mean_sort = df_mean.sort_values(by='坪単価',ascending=False)
ここでgroupbyされた「地区名」は1行、下げられているのはIndex扱いになっているからで、これを普通のカラム扱いにするには、index resetする
df_mean_sort.reset_index(inplace=True)
地区名 取引価格(総額) 坪単価 面積(㎡) 取引価格(㎡単価) 0 日本橋室町 3.200000e+07 4.22399e+06 25.000000 1.280000e+06 1 日本橋箱崎町 2.618500e+07 3.201157e+06 29.250000 9.700476e+05 2 日本橋蛎殻町 3.050000e+07 3.156153e+06 40.000000 9.564095e+05 3 銀座 3.400000e+07 3.036000e+06 35.000000 9.200000e+05 4 八丁堀 2.000000e+07 2.639999e+06 25.000000 8.000000e+05
インデックス参照で行、列抽出| df[ ] 1つしか適用できない!
例)
インデックス名、カラム名で行、列抽出|df.loc[ ]
行番号、列番号で行、列抽出|df.iloc[ ]