[PYTHON] [Hinweis] Basierend auf dem Breiten- und Längengrad der CSV-Datei haben wir ein Skript erstellt, das Daten im Zielbereich extrahiert und einen Netzcode hinzufügt.

Zweck

Basierend auf dem Breiten- und Längengrad der CSV-Datei habe ich ein Skript erstellt, das Daten im Zielbereich extrahiert und Netzcode hinzufügt.

Voraussetzungen

[Hinweis] Ich habe ein Skript zum Konvertieren von Daten im Grib2-Format in eine CSV-Datei erstellt

--Csv-Datei eingeben ――Die 5. und 6. Spalte geben den Längen- und Breitengrad an, und die 7. Spalte gibt den Niederschlagswert an. https___qiita-image-store.s3.ap-northeast-1.amazonaws.com_0_205045_ccbdb00a-4927-32b6-4a24-72c7589f6f40.png

Lauf

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

#Geben Sie die Ausgabedatei an
output_csvfile = "./out/highres_nowcast_anl_kanto.csv"

#Zielbereichseinstellung
y1 = 37.29166666666667
y2 = 34.04166666666667
x1 = 140.9375
x2 = 137.0625

#Ausgabedatei geöffnet
with open(output_csvfile, 'a', encoding='utf-8', newline="") as f:

    #Rufen Sie den Pfad aller CSV-Dateien im Ordner ab
    All_Files = glob.glob('./data/*.csv')
    pprint.pprint (All_Files)

    #Schleifenverarbeitung für die Anzahl der CSV-Dateien
    for file in All_Files:
        #Daten in Liste speichern
        df = pd.read_csv(file, header=None, encoding='utf-8')
        print(u'Ende des Speicherprozesses im Datenrahmen')
        
        #Geben Sie einen Spaltennamen an
        df.columns = ["time_s_utc","time_f_utc","sign","surface","lon","lat","rain"]
        
        print("---Vor der Datenextraktion---")

        #Zeigen Sie die ersten 5 Werte an
        print(df.head(5))

        #Siehe dtype für jede Spalte
        print(df.dtypes)

        #Nehmen Sie die Anzahl der Zeilen und Spalten
        print(df.shape)
        
        #Extrahieren Sie Daten im Zielbereich
        df_kt = df[(df["lon"]>x2) & (df["lon"]<x1) & (df["lat"]>y2) & (df["lat"]<y1)]

        #5. Mesh-Code hinzugefügt
        df_kt['meshcode'] = ju.to_meshcode(df_kt.lat, df_kt.lon, 5)

        print("---Nach der Datenextraktion---")

        #Zeigen Sie die ersten 5 Werte an
        print(df_kt.head(5))

        #Siehe dtype für jede Spalte
        print(df_kt.dtypes)

        #Nehmen Sie die Anzahl der Zeilen und Spalten
        print(df_kt.shape)

        #Schreiben, um eine CSV-Datei auszugeben
        df_kt.to_csv(f, index=False)

    print(u'Verarbeitung beenden')

Diagramm der Ausgabeergebnisse

Ausgabe einer CSV-Datei (5-minütiger Niederschlag für jedes 5. Netz) und 5. Netzformdatei Zeichnen Sie es auf dieser Grundlage in QGIS.

EiUsTC_VkAAhpwr.jpg

Recommended Posts

[Hinweis] Basierend auf dem Breiten- und Längengrad der CSV-Datei haben wir ein Skript erstellt, das Daten im Zielbereich extrahiert und einen Netzcode hinzufügt.
[Python] Informationen zum Erstellen eines Tools zum Erstellen einer neuen Outlook-E-Mail basierend auf den Daten der JSON-Datei und dem Teil, der abgefangen wurde
Python-Skript, das SQL-Dateien liest, BigQuery ausführt und CSV speichert
Ein Skript, das die in CSV geschriebenen URLs der Reihe nach öffnet und einen Vollbild-Screenshot erstellt
[Hinweis] Ein Shell-Skript, das die CPU-Auslastung eines bestimmten Prozesses in einer while-Schleife überprüft.
Hinweis zum Standardverhalten von collate_fn in PyTorch
[Hinweis] Import von Dateien in das übergeordnete Verzeichnis in Python
Verarbeiten Sie den Inhalt der Datei der Reihe nach mit einem Shell-Skript
Ein Python-Skript, das auf dem Mac erstellte ._DS_Store- und ._ * -Dateien löscht
Derjenige, der die CSV-Datei teilt, liest und parallel verarbeitet
Code lesen von faker, einer Bibliothek, die Testdaten in Python generiert
Ich habe ein Skript erstellt, um zu überprüfen, ob an der angegebenen Position der JSON-Datei in Python Englisch eingegeben wird.
Ich habe in Python ein Programm erstellt, das FX-CSV-Daten liest und eine große Anzahl von Diagrammbildern erstellt