[PYTHON] So ändern Sie mehrere Spalten von csv in Pandas (Unixtime-> Japan Time)
import glob
import os
import pandas as pd
import pandas as pd
from datetime import datetime
from pytz import timezone
#Skript zum Ändern von CSV-Daten(Säule'starttime', 'endtime'Geändert von Unix-Zeit zu japanischer Zeit)
#Es gibt eine CSV-Zieldatei direkt unter dem Programmausführungsort
csv_list = os.listdir()
# !!Rechtzeitig.remove()Bitte ziehen Sie die Nicht-CSV-Datei mit heraus.
# !!Ich habe momentan keine Zeit, aber jeder, der das Problem beheben kann, ist willkommen!
# (↑ Aus Liste löschen oder nicht in Liste einfügen, außer csv)
tz = timezone('Asia/Tokyo')
for csv_file in csv_list:
japan_starttime_list = []
japan_endtime_list = []
print(csv_file, "Lesen...")
df = pd.read_csv(csv_file)
starttime_series = df.starttime
endtime_series = df.endtime
for starttime in starttime_series:
starttime_str = str(starttime)[:10]
starttime_int = int(starttime_str)
# Unixtime -> Japan time(str) ->In Liste speichern
utc_time = datetime.fromtimestamp(starttime_int)
japan_time = utc_time.astimezone(tz)
japan_time_str = japan_time.strftime('%H:%M:%S')
japan_starttime_list.append(japan_time_str)
#Machen Sie dasselbe mit der Endzeit
for endtime in endtime_series:
endtime_str = str(endtime)[:10]
endtime_int = int(endtime_str)
# Unixtime -> Japan time(str) ->In Liste speichern
utc_time = datetime.fromtimestamp(endtime_int)
japan_time = utc_time.astimezone(tz)
japan_time_str = japan_time.strftime('%H:%M:%S')
japan_endtime_list.append(japan_time_str)
#Datenänderung in zwei Spalten des Datenrahmens
df.starttime = japan_starttime_list
df.endtime = japan_endtime_list
#Erstellen Sie eine neue CSV
df.to_csv('rev_' + csv_file)