J'ai appris que la transition de population peut être obtenue par CSV sur le site suivant, je vais donc la télécharger immédiatement et résumer la procédure confirmée.
Données ouvertes du site de support Shimane no Satozukuri
Installez la bibliothèque afin que le japonais s'affiche correctement pour la visualisation.
python
!pip install japanize_matplotlib
Succès si ce qui suit est affiché.
Collecting japanize_matplotlib
Downloading https://files.pythonhosted.org/packages/2c/aa/3b24d54bd02e25d63c8f23bb316694e1aad7ffdc07ba296e7c9be2f6837d/japanize-matplotlib-1.1.2.tar.gz (4.1MB)
|████████████████████████████████| 4.1MB 2.8MB/s
Requirement already satisfied: matplotlib in /usr/local/lib/python3.6/dist-packages (from japanize_matplotlib) (3.2.2)
Requirement already satisfied: python-dateutil>=2.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib->japanize_matplotlib) (2.8.1)
Requirement already satisfied: pyparsing!=2.0.4,!=2.1.2,!=2.1.6,>=2.0.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib->japanize_matplotlib) (2.4.7)
Requirement already satisfied: kiwisolver>=1.0.1 in /usr/local/lib/python3.6/dist-packages (from matplotlib->japanize_matplotlib) (1.2.0)
Requirement already satisfied: cycler>=0.10 in /usr/local/lib/python3.6/dist-packages (from matplotlib->japanize_matplotlib) (0.10.0)
Requirement already satisfied: numpy>=1.11 in /usr/local/lib/python3.6/dist-packages (from matplotlib->japanize_matplotlib) (1.18.5)
Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.6/dist-packages (from python-dateutil>=2.1->matplotlib->japanize_matplotlib) (1.12.0)
Building wheels for collected packages: japanize-matplotlib
Building wheel for japanize-matplotlib (setup.py) ... done
Created wheel for japanize-matplotlib: filename=japanize_matplotlib-1.1.2-cp36-none-any.whl size=4120191 sha256=320f4fbd50cf3f232030ce922031d1c926db2e98033cbc3059fa06e5b28d585d
Stored in directory: /root/.cache/pip/wheels/9c/f9/fc/bc052ce743a03f94ccc7fda73d1d389ce98216c6ffaaf65afc
Successfully built japanize-matplotlib
Installing collected packages: japanize-matplotlib
Successfully installed japanize-matplotlib-1.1.2
python
import matplotlib.pyplot as plt
import japanize_matplotlib
import seaborn as sns
sns.set(font="IPAexGothic")
Étant donné que les données de 2012 à 2019 peuvent être téléchargées, exécutez le code suivant pour le charger.
python
import pandas as pd
url_base = "https://satodukuri.pref.shimane.lg.jp/info/opendata/download?nendo=0000&fmt=csv"
df = pd.DataFrame()
for y in range(2012, 2020):
url = url_base.replace("0000", str(y))
df = pd.concat([df, pd.read_csv(url)])
df.shape
Vous pouvez voir qu'il y a 2384 lignes de données de différentes manières.
(2384, 109)
python
df.info()
Résultat d'exécution
<class 'pandas.core.frame.DataFrame'>
Int64Index: 2384 entries, 0 to 297
Columns: 109 entries,Année à la femme de 90 ans et plus Taux de survie estimé
dtypes: float64(56), int64(47), object(6)
memory usage: 2.1+ MB
Il y a 109 lignes ... étonnamment nombreuses.
python
for col in df.columns:
print(col)
Résultat de l'exécution.
année
Code de district
Nom du district
Nom municipal
Municipalités avant la fusion
Cadre régional
Désignation de la zone de support du site
Remarque
Population masculine et féminine totale
Nombre de ménages
Taux de vieillissement
Taux de vieillissement tardif
Taux d'augmentation / diminution de la population
Ratio de 4 ans ou moins
Proportion de femmes dans la vingtaine et la trentaine
Ratio de population d'élèves du premier cycle du secondaire
Ratio de population scolaire élémentaire
Ratio de population d'âge de production
Ratio des jeunes groupes d'âge
Population des écoles élémentaires
Population du premier cycle du secondaire
Groupe de maintien de la population
Nombre d'élèves du primaire
Population masculine de 0 à 4 ans
Population masculine de 5 à 9 ans
Population masculine de 10 à 14 ans
Population masculine de 15 à 19 ans
Population masculine de 20 à 24 ans
Population masculine de 25 à 29 ans
Population masculine de 30 à 34 ans
Population masculine de 35 à 39 ans
Population masculine de 40 à 44 ans
Population masculine de 45 à 49 ans
Population masculine de 50 à 54 ans
Population masculine de 55 à 59 ans
Population masculine de 60 à 64 ans
Population masculine de 65 à 69 ans
Population masculine de 70 à 74 ans
Population masculine de 75 à 79 ans
Population masculine de 80 à 84 ans
Population masculine de 85 à 89 ans
Population masculine de 90 à 94 ans
Population masculine de 95 à 99 ans
Population masculine de plus de 100 ans
Population féminine de 0 à 4 ans
Population féminine de 5 à 9 ans
Population féminine de 10 à 14 ans
Population féminine de 15 à 19 ans
Population féminine de 20 à 24 ans
Population féminine de 25 à 29 ans
Population féminine de 30 à 34 ans
Population féminine de 35 à 39 ans
Population féminine de 40 à 44 ans
Population féminine de 45 à 49 ans
Population féminine de 50 à 54 ans
Population féminine de 55 à 59 ans
Population féminine de 60 à 64 ans
Population féminine de 65 à 69 ans
Population féminine de 70 à 74 ans
Population féminine de 75 à 79 ans
Population féminine de 80 à 84 ans
Population féminine de 85 à 89 ans
Population féminine de 90 à 94 ans
Population féminine de 95 à 99 ans
Population féminine de plus de 100 ans
Taux de changement de la cohorte masculine (0-4 ans)
Taux de changement de cohorte masculine (5-9 ans)
Taux de changement de cohorte masculine (10-14 ans)
Taux de changement de cohorte masculine (15-19 ans)
Taux de changement de la cohorte masculine (20-24 ans)
Taux de changement de la cohorte masculine (25-29 ans)
Taux de changement de cohorte masculine (30-34 ans)
Taux de changement de cohorte masculine (35 à 39 ans)
Taux de changement de la cohorte masculine (40-44 ans)
Taux de changement de cohorte masculine (45-49 ans)
Taux de changement de la cohorte masculine (50-54 ans)
Taux de changement de la cohorte masculine (55-59 ans)
Taux de changement de cohorte masculine (60-64 ans)
Taux de changement de la cohorte masculine (65-69 ans)
Taux de changement de la cohorte masculine (70-74 ans)
Taux de changement de cohorte masculine (75 à 79 ans)
Taux de changement de la cohorte masculine (80-84 ans)
Taux de changement de la cohorte masculine (85-89 ans)
Taux de changement de cohorte masculine (90-94 ans)
Taux de changement de la cohorte masculine (95-99 ans)
Taux de changement de la cohorte masculine (100 ans et plus)
Taux de survie estimé pour les hommes de plus de 90 ans
Taux de changement de cohorte féminine (0-4 ans)
Taux de changement de cohorte féminine (5-9 ans)
Taux de changement de cohorte féminine (10-14 ans)
Taux de changement de cohorte féminine (15-19 ans)
Taux de changement de cohorte féminine (20-24 ans)
Taux de changement de cohorte féminine (25-29 ans)
Taux de changement de cohorte féminine (30-34 ans)
Taux de changement de cohorte féminine (35-39 ans)
Taux de changement de cohorte féminine (40-44 ans)
Taux de changement de cohorte féminine (45-49 ans)
Taux de changement de cohorte féminine (50-54 ans)
Taux de changement de cohorte féminine (55-59 ans)
Taux de changement de cohorte féminine (60-64 ans)
Taux de changement de cohorte féminine (65-69 ans)
Taux de changement de cohorte féminine (70-74 ans)
Taux de changement de cohorte féminine (75-79 ans)
Taux de changement de cohorte féminine (80-84 ans)
Taux de changement de cohorte féminine (85-89 ans)
Taux de changement de cohorte féminine (90-94 ans)
Taux de changement de cohorte féminine (95-99 ans)
Taux de changement de cohorte féminine (100 ans et plus)
Taux de survie estimé pour les femmes de plus de 90 ans
... assez bien.
python
df["Nom municipal"].value_counts()
Izumo City 344
Matsue City 256
Ville du Yunnan 240
Ville de Daejeon 216
Hamada City 200
Ville de Yasuki 192
Masuda City 160
Etsu City 160
Oki no Shimamachi 120
Ville de Misato 104
Ville d'Eunan 96
Ville de Tsuwano 96
Oku Izumocho 72
Ville de Yoshiga 40
Iinancho 40
Kawamotocho 24
Ville de Nishinoshima 8
Kaishicho 8
Village de Tomoo 8
Name:Nom municipal, dtype: int64
Hmmmm ...
python
df[df["Nom municipal"] == "Matsue"]["Nom du district"].value_counts()
Akika 8
Abomination 8
Cheval cru 8
Kashima 8
Johoku 8
Yito 8
Intention supérieure est 8
Ohno 8
Canton d'Izumo 8
Honjo 8
Hokichi 8
Miho Seki 8
Tsuda 8
Koshihara 8
Mochida 8
Kawazu 8
Shimane 8
Saiga 8
Oba 8
Asahi 8
Joto 8
Shishido 8
Nogi 8
Yatsuka 8
Ikuya 8
Boisson du matin 8
Tamayu 8
Takeya 8
Furue 8
Shiragata 8
Yakumo 8
Josai 8
Name:Nom du district, dtype: int64
Hmmmm ...
Pour le moment, je vais dessiner un graphique du «nombre total d'hommes et de femmes», «population des écoles primaires», «population des écoles secondaires de premier cycle» et «taux de vieillissement», qui semblent intéressants.
python
df_area = df.groupby(["Nom municipal", "année"]).sum()
df_area.loc["Matsue"]["Population masculine et féminine totale"].plot(figsize=(15,4))
plt.show()
df_area.loc["Matsue"]["Population des écoles élémentaires"].plot(figsize=(15,4))
plt.show()
df_area.loc["Matsue"]["Population du premier cycle du secondaire"].plot(figsize=(15,4))
plt.show()
df_area = df.groupby(["Nom municipal", "année"]).mean()
df_area.loc["Matsue"]["Taux de vieillissement"].plot(figsize=(15,4))
plt.show()
Résultat de l'exécution.
... pas bon.
Recommended Posts