Sur la base de la latitude et de la longitude du fichier CSV, j'ai créé un script qui extrait les données de la plage cible et ajoute du code de maillage.
[Note] J'ai créé un script pour convertir les données au format grib2 en fichier csv
--Spécifiez le dossier d'entrée (en supposant qu'il existe plusieurs fichiers csv) et le fichier CSV de sortie.
highres_nowcast_add_meshcode.py
# -*- coding: utf-8 -*-
import os
import glob
import csv
import pandas as pd
import pprint
import calendar
import jismesh.utils as ju
#Spécifiez le fichier de sortie
output_csvfile = "./out/highres_nowcast_anl_kanto.csv"
#Réglage de la plage cible
y1 = 37.29166666666667
y2 = 34.04166666666667
x1 = 140.9375
x2 = 137.0625
#Fichier de sortie ouvert
with open(output_csvfile, 'a', encoding='utf-8', newline="") as f:
#Obtenez le chemin de tous les fichiers csv dans le dossier
All_Files = glob.glob('./data/*.csv')
pprint.pprint (All_Files)
#Traitement en boucle pour le nombre de fichiers csv
for file in All_Files:
#Stocker les données dans la liste
df = pd.read_csv(file, header=None, encoding='utf-8')
print(u'Fin du processus de stockage dans la trame de données')
#Donnez un nom de colonne
df.columns = ["time_s_utc","time_f_utc","sign","surface","lon","lat","rain"]
print("---Avant l'extraction des données---")
#Afficher les 5 premières valeurs
print(df.head(5))
#Voir dtype pour chaque colonne
print(df.dtypes)
#Prenez le nombre de lignes et de colonnes
print(df.shape)
#Extraire des données dans la plage cible
df_kt = df[(df["lon"]>x2) & (df["lon"]<x1) & (df["lat"]>y2) & (df["lat"]<y1)]
#Ajout du 5ème code de maillage
df_kt['meshcode'] = ju.to_meshcode(df_kt.lat, df_kt.lon, 5)
print("---Après l'extraction des données---")
#Afficher les 5 premières valeurs
print(df_kt.head(5))
#Voir dtype pour chaque colonne
print(df_kt.dtypes)
#Prenez le nombre de lignes et de colonnes
print(df_kt.shape)
#Écrire dans le fichier CSV de sortie
df_kt.to_csv(f, index=False)
print(u'Sortie de traitement')
Fichier csv de sortie (précipitation de 5 minutes pour chaque 5ème maillage) et fichier de forme du 5ème maillage Sur cette base, tracez-le dans QGIS.
Recommended Posts