Python-如何在.txt文件中读取破折号和冒号分隔的时间?

时间:2019-07-26 15:55:57

标签: python pandas numpy date dataframe

我目前正在从.txt文件读取数据,该文件包含日期和时间以及其他一些信息。

我在不同的图中(例如散点图和直方图)使用日期(例如年份)和时间的组成部分。

我无法从日期中区分年,月等。从时间开始的小时,分​​钟,秒相同。

以下是.txt文件的示例:

505 12-Mar-1999 19:31:20 -2.32 -16.16500 2.58400 7.06 4.27 4

984 05-Mar-1999 21:01:41 -31.25 -16.15200 2.59500 6.76 2.07 1

127 18-Feb-1999 09:22:38 -96.74 -16.15200 2.60200 5.87 3.54 1

128 18-Feb-1999 09:08:32 -96.75 -16.16100 2.59100 6.49 4.24 1

19 25-Jun-1999 10:56:03 -69.68 -16.15600 2.59800 6.75 2.12 1

89 16-Jun-1999 12:09:56 -38.62 -16.15200 2.59500 6.98 2.21 1

我已经尝试过分割日期和时间并将其写入新文件。

import pandas as pd
from pandas import read_csv

df=pd.read_csv('file.txt', sep=' ')

x = open('testfile.txt', 'w')
for i in range(len(df)):
    date = df.columns[1]
    time = df.columns[2]
    year = date.split('-')[2]
    month = date.split('-')[1]
    day = date.split('-')[0]
    hour = time.split(':')[0]
    minute = time.split(':')[1]
    second = time.split(':')[2] 
    z = '%s %s %s %s %s %s\n'%(year, month, day, hour, minute, second) 
    x.write(z)
x.close() 

这是以我想要的格式将日期和时间写入文件testfile.txt中,即:

1999 Mar 12 19 31 20

1999 Mar 12 19 31 20

1999 Mar 12 19 31 20

问题是我无法弄清楚为什么它只是一遍又一遍地写第一行日期和时间。

0 个答案:

没有答案