[PYTHON] Visualisieren Sie den Antwortstatus der Volkszählung 2020

Einführung

kokusei2020.png

Visualisieren Sie die Internet-Antwortrate und die E-Mail-Antwortrate, indem Sie in Nationale Volkszählung 2020 den Antwortstatus nach Präfektur in Excel löschen.

Schaben

import requests
from bs4 import BeautifulSoup

import re

from urllib.parse import urljoin

url = "https://www.kokusei2020.go.jp/internet/"

r = requests.get(url)
r.raise_for_status()

soup = BeautifulSoup(r.content, "html.parser")

links = {}

for i in soup.find_all("span", text="Excel"):

    link = urljoin(url, i.find_parent("a").get("href"))

    m = re.search("census_answers_(pref|city)_\d{6}.xlsx", link)

    if m:
        links[m.group(1)] = link

links

Durch die Präfektur

import pandas as pd

df_pref = pd.read_excel(
    links["pref"],
    index_col=[0, 1],
    header=None,
    skiprows=9,
    usecols=[1, 2, 3, 4, 5, 6, 7],
    names=["Code", "Präfekturen", "Anzahl der H27-Haushalte", "Netz", "Per Mail", "Netz率", "Per Mail率"],
)

df_pref["Anzahl der Antworten"] = df_pref["Netz"] + df_pref["Per Mail"]

df_pref["Nettorate"] *= 100
df_pref["Versandrate"] *= 100

df_pref["Rücklaufquote"] = df_pref["Nettorate"] + df_pref["Versandrate"]

df_pref.to_csv("pref.csv", encoding="utf_8_sig")

Nach Gemeinde

df_city = pd.read_excel(
    links["city"],
    index_col=[0, 1, 2],
    header=None,
    skiprows=9,
    usecols=[1, 2, 3, 4, 5, 6, 7, 8],
    names=["Code", "Präfekturen", "Gemeinde", "Anzahl der H27-Haushalte", "Netz", "Per Mail", "Netz率", "Per Mail率"],
)

df_city["Anzahl der Antworten"] = df_city["Netz"] + df_city["Per Mail"]

df_city["Nettorate"] *= 100
df_city["Versandrate"] *= 100

df_city["Rücklaufquote"] = df_city["Nettorate"] + df_city["Versandrate"]

df_city.to_csv("city.csv", encoding="utf_8_sig")

df_city

Visualisierung

import matplotlib.pyplot as plt
import seaborn as sns

sns.set()

import japanize_matplotlib

#Auflösung
import matplotlib as mpl

mpl.rcParams["figure.dpi"] = 200

df1 = df_pref.sort_index(ascending=False).reset_index(level="Code", drop=True)

df1.loc[:, ["Nettorate", "Versandrate"]].plot.barh(stacked=True, figsize=(5, 10))

plt.legend(bbox_to_anchor=(1.05, 1), loc="upper left", borderaxespad=0, fontsize=8)

plt.savefig("01.png ", dpi=200, bbox_inches="tight")
plt.show()

pref.png

Recommended Posts

Visualisieren Sie den Antwortstatus der Volkszählung 2020
Visualisieren Sie die Flugbahn von Hayabusa 2
Visualisieren Sie mit OpenCV den Wertschätzungsstatus von Kunstwerken
Visualisieren Sie die Exportdaten des Piyo-Protokolls
Überwachen Sie regelmäßig die HTTP-Antwort des Webservers
Visualisieren Sie das Verhalten des Sortieralgorithmus mit matplotlib
Überprüfen Sie den Status der Daten mit pandas_profiling
Ich möchte den Transferstatus der 2020 J League visualisieren. Was soll ich tun?
Die Bedeutung des Selbst
der Zen von Python
Visualisieren Sie den Bereich der internen und externen Einfügungen mit Python
Die Geschichte von sys.path.append ()
Visualisieren Sie das charakteristische Vokabular eines Dokuments mit D3.js.
Ich habe versucht, die Spacha-Informationen von VTuber zu visualisieren
Verstehen Sie den Status des Datenverlusts - Python vs. R.
Holen Sie sich mit Python den Betriebsstatus von JR West
Visualisieren Sie die Anzahl der Beschwerden von Lebensversicherungsunternehmen
Rache der Typen: Rache der Typen
Visualisieren wir das Handelsvolumen der TSE-Aktien - jpxlab sample
Visualisieren Sie die Ergebnisse von Entscheidungsbäumen, die mit Python scikit-learn erstellt wurden
Django gibt den Inhalt der Datei als HTTP-Antwort zurück
[Blender] Kennen Sie den Auswahlstatus von versteckten Objekten im Outliner
Visualisieren Sie die "regionale Farbe" der Stadt, indem Sie die Vektorisierung von Dokumenten anwenden
Überprüfen Sie den Speicherstatus des Servers mit dem Befehl Linux free
Überprüfen Sie den Betriebsstatus des Servers mit dem Linux-Befehl top
Lassen Sie uns den Entwicklungsstatus der Stadt anhand des Satellitenbildes erraten.
[Python] Ich habe versucht, die folgende Beziehung von Twitter zu visualisieren
Stellen wir uns die Anzahl der mit Matplotlib mit dem Coronavirus infizierten Personen vor
Visualisieren Sie den Tweet-Fluss mit Diamond + Graphite + Grafana
[Flask & Bootstrap] Visualisiere den Inhalt von Texten mit Word Cloud ~ Lyrics Word Cloud ~
Richten Sie die Version von chromedriver_binary aus
Scraping das Ergebnis von "Schedule-Kun"
10. Zählen der Anzahl der Zeilen
Auf dem Weg zum Ruhestand von Python2
Holen Sie sich die Anzahl der Ziffern
Erläutern Sie den Code von Tensorflow_in_ROS
Verwenden Sie die Clustering-Ergebnisse erneut
Lassen Sie uns GraphConvModel von DeepChem visualisieren
GoPiGo3 des alten Mannes
Berechnen Sie die Anzahl der Änderungen
Ändern Sie das Thema von Jupyter
Die Popularität von Programmiersprachen
Ändern Sie den Stil von matplotlib
Über die Komponenten von Luigi
Verknüpfte Komponenten des Diagramms
Filtern Sie die Ausgabe von tracemalloc
Über die Funktionen von Python
Simulation des Inhalts der Brieftasche
Die Kraft der Pandas: Python
Visualisieren Sie mit Axes3D vertikal den Betrag, der dem Scheitelpunkt von networkx entspricht
Überprüfen Sie die Antwort des HTTP-Statuscodes mit dem Befehl curl (#Linux #Shell).
Über Boxplot und Violinplot, die die Variation unabhängiger Daten visualisieren
Visualisieren Sie das Zentrum der Rangkampfumgebung über die Pokemon Home-API
Visualisieren Sie die Häufigkeit von Wortvorkommen in Sätzen mit Word Cloud. [Python]
Ich habe den Nutzungsstatus des Parkplatzes anhand von Satellitenbildern überprüft.
[Word2vec] Lassen Sie uns das Ergebnis der Verarbeitung von Unternehmensbewertungen in natürlicher Sprache visualisieren
Ich habe versucht, den allgemeinen Zustand der VTuber-Kanalbetrachter zu visualisieren