0

csv ファイルに 2 つの列があり、そのうちの 1 つは hh:mm:ss の形式の時刻を持ち、もう 1 つは月曜日に等しい 1 と日曜日に等しい 7 の曜日を持ちます。データに関連付けられた日付はありません。

データを 1 つのフィールドにマージして、時間に曜日が関連付けられるようにしたいと考えています。

私はstrptimeで大丈夫です:

time.strptime(fl['journey']['BeginTime'][row], "%H:%M:%S")

形式は次のとおりです。

time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=23, tm_min=0, tm_sec=0, tm_wday=0, tm_yday=1, tm_isdst=-1)

曜日に対応する数字は、次の変数に格納されます。

fl['journey']['Day'][row]

どんな助けでも大歓迎です。

4

3 に答える 3

2
date_string = '{0} {1}'.format(fl['journey']['Day'][row] - 1,
                               fl['journey']['BeginTime'][row])

dateobj = datetime.datetime.strptime(date_string, '%w %H:%M:%S')
于 2012-05-24T16:54:08.647 に答える
1
date_string = "%d %s" % (int(fl['journey']['Day'][row]) % 7 ,
                         fl['journey']['BeginTime'][row])

date = time.strptime(date_string, '%w %H:%M:%S')
于 2012-05-24T17:05:16.673 に答える
1

これでうまくいくはずです:

from datetime import datetime

datetime.strptime("6 13:45:12", "%w %H:%M:%S").timetuple()
time.struct_time(tm_year=1900, tm_mon=1, tm_mday=1, tm_hour=13, tm_min=45, tm_sec=12, tm_wday=0, tm_yday=1, tm_isdst=-1)

Pythonでは、平日は0 =日曜日から始まり、6まで続くことを忘れないでください

于 2012-05-24T17:09:13.843 に答える