Le gouvernement métropolitain de Tokyo a publié des données sur le nombre de personnes infectées par le COVID-19. Je souhaite traiter ces données CSV.
Nombre de personnes infectées annoncé par le gouvernement métropolitain de Tokyo https://catalog.data.metro.tokyo.lg.jp/dataset/t000010d0000000068/resource/c2d997db-1450-43fa-8037-ebb11ec28d4c (Fichier CSV) https://stopcovid19.metro.tokyo.lg.jp/data/130001_tokyo_covid19_patients.csv
La documentation officielle montre comment lire le fichier CSV. https://docs.python.org/ja/3/library/csv.html
En référence à cela, créez un programme qui lit le fichier CSV téléchargé en 1.
python
import csv
with open('130001_tokyo_covid19_patients.csv') as csvfile:
reader = csv.reader(csvfile, delimiter=',', quotechar='"')
for row in reader:
print('■'.join(row))
Lorsque je fais cela, j'obtiens le message d'erreur suivant
UnicodeDecodeError: 'cp932' codec can't decode byte 0xef in position 0: illegal multibyte sequence
Certes, cp932 était un mot avec un sens comme S-JIS. Ainsi, lorsque j'ai vérifié le code de caractère du fichier CSV, c'était UTF-8.
Pour la méthode d'adaptation, j'ai fait référence à cet article. Lire le fichier CSV Python UTF-8 (compatible UnicodeDecodeError)
Il est recommandé de spécifier encoding = "utf_8" pour open.
Ceci est le code complété
python
import csv
with open('130001_tokyo_covid19_patients.csv', encoding="utf_8") as csvfile:
reader = csv.reader(csvfile, delimiter=',', quotechar='"')
for row in reader:
print('■'.join(row))
La "ligne" dans 3 était une classe de liste. A partir de maintenant, j'aimerais ajouter quotidiennement, Cela semble gênant comme ça. Il semble plus facile d'utiliser pandan, donc je pense que je vais le refaire avec des pandas ...
Recommended Posts