我想阅读以下ascii文件的两列(第0列,第4列)并绘制它们。一个包含yyymmddHHMMSS格式的日期,我想将其转换为日期编号。
# Date RMS.I RMS.Q Cal.I Cal.Q
20121220220000 1.45485 1.42051 1.26393 1.29448
20121220230000 1.43377 1.39987 1.26803 1.29874
20121221000000 1.44888 1.41472 1.24759 1.27771
我一直在使用numpy.loadtxt,但它将所有列都读为float。
mydate, myvar = np.loadtxt('infile.txt', comments="#", skiprows=1, usecols=(0,4), unpack=True)
答案 0 :(得分:0)
您可以按以下方式导入structured array:
mydate, myvar = np.loadtxt('infile.txt', comments="#", skiprows=1, usecols=(0,4), unpack=True, dtype=[('date', '|S10'), ('floatmio', float)])
它会将日期导入str
数组中的mydate
。然后,您可以在单个数组条目上使用datetime
库来处理它们,如下所示:
import datetime
dates = [datetime.datetime.strptime(x, '%Y%m%d%H') for x in mydate]