Von Ihnen selbst erstellte automatische Verarbeitung von CSV-Eingabe / Ausgabe und Konvertierung Ich habe das Material nicht an einem Ort gesehen, es ist also ein Memorandum.
Bibliotheksaufruf
import csv
import pandas as pd
import numpy as np
import os
import glob
from pathlib import Path
Shift-JIS / sjis-Dateien für jeden Ordner werden gleichzeitig in UTF-8 konvertiert und in einen anderen Ordner ausgegeben.
###################################################
#UTF-Dateien von Shift JIS in einem bestimmten Ordner-In 8 konvertieren
#Lesen Sie, was sich im Ordner in befindet, und lassen Sie das Original
#In Ordner speichern
print("Shift JIS to UTF-8 Start!")
p = Path("./in")
files = list (p.glob("*.csv"))
for file in files:
shift_jis_file = pd.read_csv(file,encoding='Shift_JISx0213')
file_path = f'out/{file.name}'
shift_jis_file.to_csv(file_path)
print("Shift JIS to UTF-8 End!")
###################################################
Lesen Sie den zu verarbeitenden Dateinamen (Listen Sie diesmal die Dateinamen auf, die Sie in filelist.csv verarbeiten möchten.)
#Lesen Sie die Liste der Dateien, die Sie verarbeiten möchten
#(In einer Spalte wird nur der Dateiname aufgeführt.)
filelist = pd.read_csv('./filelist.csv')
#Schleifenverarbeitung für jede Datei
for index, row in filelist.iterrows():
#Lesen Sie den Namen der zu verarbeitenden Datei Zeile für Zeile
a_list=str(row.values)
#Eingabe- / Ausgabepfaddefinition: Dateiname in Klammern lesen, Variablenspeicher ohne Apostrophie, Ordnername und Join
inputpath=str('./out/'+a_list)
inputpath=inputpath.replace("'", '')
inputpath=inputpath.replace('[', '')
inputpath=inputpath.replace(']', '')
#Eingabe- / Ausgabepfaddefinition: Dateiname in Klammern lesen, Variablenspeicher ohne Apostrophie, Ordnername und Join
outputfolder=str('./converted/')
outputpath=str('./converted/'+a_list)
outputpath=outputpath.replace("'", '')
outputpath=outputpath.replace('[', '')
outputpath=outputpath.replace(']', '')
#Eingabe- / Ausgabepfaddefinition: Dateiname in Klammern lesen, Variablenspeicher ohne Apostrophie, Ordnername und Join
mergedpath=str('./merged/tsestockdata.csv')
mergedpath=mergedpath.replace("'", '')
mergedpath=mergedpath.replace('[', '')
mergedpath=mergedpath.replace(']', '')
Aktuelle Rohdatendatei (Verarbeitung der in UTF-8 konvertierten Datei), Spaltenadditionsvorgänge wie das Löschen unnötiger Zeilen und das gleichzeitige Hinzufügen bestimmter Zeichenfolgen
#Datei lesen
df = pd.read_csv(inputpath, header=None)
#Extrahieren Sie einen bestimmten Wert und fügen Sie den extrahierten Wert zur letzten Spalte der Spalte hinzu
tradingdate=inputpath[-14:-4]
df['TradingDate']=tradingdate
##########Löschen Sie unnötige Zeilen, benennen Sie Spalten um
df.columns = df.iloc[0]
df = df.reindex(df.index.drop(0)).reset_index(drop=True)
df = df.reindex(df.index.drop(0)).reset_index(drop=True)
df.columns.name = None
df.columns = ['Rank', 'Code', 'Market','Company','EndingPrice','PriceChange','PercentChange','Volume','TradingDate']
Individueller Export von CSV
##########CSV-Exportprozess zum Löschen unnötiger Zeilen und zum Umbenennen von Spaltennamen
df.to_csv(path_or_buf=outputpath, sep=',', na_rep='', float_format=None, columns=None, header=True,
index=True, index_label=None, mode='w', encoding=None, compression=None, quoting=None,
quotechar='"', line_terminator='\n', chunksize=None, date_format=None,
doublequote=True, escapechar=None, decimal='.')
print("Convert File Processed:"+a_list)
CSV-Dateien zusammenführen (da es einfacher ist, eine BI-aggregierte Datei aufzurufen)
##########Führen Sie alle CSV-Dateien in einem bestimmten Ordner zusammen
DATA_PATH = outputfolder
All_Files = glob.glob('{}*.csv'.format(DATA_PATH))
list2 = []
for file in All_Files:
list2.append(pd.read_csv(file))
df = pd.concat(list2, sort=False)
df.to_csv(mergedpath, encoding='utf_8')
print("Merge Process End!!")
##########
Recommended Posts