不動産データをPythonで分析してみる

# 種類別の不動産の取引価格割合を調べる
ある地域で現在売りに出されている不動産のうち、どんな種類がどの価格割合で売られているか調べます。
中古マンション、宅地（土地＋建物）、土地のみ、林地　などの不動産で、どの種類の取引価格割合が多いでしょうか。

# データを取得する
下記サイトからサンプルデータを取得してきます。
好きな地域を指定して、種類は比較するために「すべて」を選択してください。
時期は5年分程度を取得するとある程度傾向を知ることができるのではないでしょうか。
（統計学について詳しくないので、知りたい結果を得るためにどれ程ののデータが必要なのかはわかりません。残念ですね。）

https://www.reinfolib.mlit.go.jp/realEstatePrices/

![Screenshot 2024-08-20 145502.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/722467/299201b4-a5e4-010f-0d73-0dbc2865aa34.png)

自分の近所のデータとかでも面白いかも。

# Shift_JIS から UTF-8 に変換

データ処理のために下記処理でエンコードを変換してください。

```python
input_file = "きみがとってきた.csv"
output_file = "きみがとってきた_utf8.csv"

with open(input_file, 'r', encoding='shift_jis', errors='replace') as f_in:
    content = f_in.read()

with open(output_file, 'w', encoding='utf-8') as f_out:
    f_out.write(content)

print("エンコーディングの変換が完了しました。")
```
確認してみる

```
# データを読み込む
df = pd.read_csv(output_file)
print(df.head())
```
結果
```
         種類  価格情報区分   地域  市区町村コード 都道府県名  市区町村名   地区名    最寄駅：名称 最寄駅：距離（分）  取引価格（総額）  坪単価   間取り  ... 建物の構造   用途 今後の利用目的 前面道路：方位  前面道路：種類 前面道路：幅員（ｍ）  都市計画 建ぺい率（％） 容積率（％）        取引時期   改装  取引の事情等
0  中古マンション等  成約価格情報  NaN     1107   北海道  札幌市西区  琴似４条  琴似(札幌市営)         9  24000000  NaN  ４ＬＤＫ  ...   ＳＲＣ  NaN     NaN     NaN      NaN        NaN  １種住 居     NaN    NaN  2021年第3四半期  NaN     NaN
1  中古マンション等  成約価格情報  NaN     1107   北海道  札幌市西区  琴似４条  琴似(札幌市営)         6  21000000  NaN  ３ＬＤＫ  ...    ＲＣ  NaN     NaN     NaN      NaN        NaN  １低住専     NaN    NaN  2021年第3四半期  NaN     NaN
2  中古マンション等  成約価格情報  NaN     1107   北海道  札幌市西区  琴似４条  琴似(札幌市営)         6  23000000  NaN  ３ＬＤＫ  ...    ＲＣ  NaN     NaN     NaN      NaN        NaN  １種住居     NaN    NaN  2021年第3四半期  NaN     NaN
3  中古マンション等  成約価格情報  NaN     1107   北海道  札幌市西区  西野２条       発寒南        10   3000000  NaN  ３ＬＤＫ  ...    ＲＣ  NaN     NaN     NaN      NaN        NaN  近隣商業     NaN    NaN  2021年第3四半期  NaN     NaN
4  中古マンション等  成約価格情報  NaN     1107   北海道  札幌市西区  西野２条       発寒南        12   2000000  NaN   ３ＤＫ  ...    ＲＣ  NaN     NaN     NaN      NaN        NaN   NaN     NaN    NaN  2021年第3四半期  NaN     NaN
```

# 文字化け対応
文字化けを直すため置換します。

```python
df.rename(columns={'延床面積（�u）': '延床面積（㎡）'}, inplace=True)
```

# 整形後のデータ確認
```python
print(df.describe())
```
```
       市区町村コード      取引価格（総額）           坪単価     取引価格（�u単価）   前面道路：幅員（ｍ）      建ぺい率（％）       容積率（％）
count   6714.0  6.714000e+03  1.800000e+03    1800.000000  4276.000000  5581.000000  5581.000000
mean    1107.0  3.237656e+07  3.082100e+05   93198.261111     9.389874    61.058950   193.406200
std        0.0  5.540421e+07  1.724856e+05   52277.547987     6.038094     9.803094    72.718769
min     1107.0  3.000000e+04  8.400000e+02     260.000000     2.500000    30.000000    60.000000
25%     1107.0  1.300000e+07  1.900000e+05   59000.000000     6.500000    60.000000   200.000000
50%     1107.0  2.200000e+07  2.900000e+05   88000.000000     8.000000    60.000000   200.000000
75%     1107.0  3.400000e+07  3.925000e+05  120000.000000    10.000000    60.000000   200.000000
max     1107.0  1.500000e+09  2.900000e+06  880000.000000    88.000000    90.000000   500.000000
```


# グラフとして表示する

種類ごとに合計金額を　.groupby("種類").sum()

で求め

df["x軸ラベル"].plot.pie(y="y軸ラベル")

で円グラフとして表示する。

```python
df_tmp = df.groupby("種類").sum()
df_tmp["取引価格（総額）"].plot.pie(y="取引価格（総額）")
plt.show()
```

# 結果
一番割合が多いのは宅地（土地と建物）でした。二番目は土地ですね。
建物を取り壊さずそのまま土地と一緒に売りに出すケースが多いようです。
建物壊すのにもお金かかりますしね。

土地の取引価格割合のほうが中古マンションより大きいので空き地がけっこうあるのかもしれません。
これは面積で比較したほうがいいので今度やってみたいと思います。
もう少し、いろいろな値を基準に比較してこのデータから何がわかるか今度調べてみたいです。

![Screenshot 2024-08-20 151543.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/722467/ec8aec18-df84-1735-b4e5-3d309674d575.png)