私はpythonを学んでいるので、私に我慢してください。datetime 変数を numpy 配列に取得しようとしましたが、その方法を理解できませんでした。後で各インデックスの時刻の差を計算する必要があるため、datetime 変数を配列に入れる必要があるのか、それとも別のデータ型に変換する必要があるのかわかりませんでした。エラーが発生します:
'NoneType' object does not support item assignment
私の dtype 変数は正しく構築されていますか? これは日時型については何も言いません。
import numpy as np
from liblas import file
f = file.File(project_file, mode = 'r')
num_points = int(f.__len())
# dtype should be [float, float, float, int, int, datetime]
dt = [('x', 'f4'), ('y', 'f4'), ('z', 'f4'), ('i', 'u2'), ('c', 'u1'), ('time', 'datetime64')]
xyzict = np.empty(shape=(num_points, 6), dtype = dt)
# Load all points into numpy array
counter = 0
for p in f:
newrow = [p.x, p.y, p.z, p.i, p.c, p.time]
xyzict[counter] = newrow
counter += 1
前もって感謝します
編集:先に進む前に、配列を日付でソートする予定であることに注意してください。
p.time の形式は次のとおりです。
>>>p.time
datetime.datetime(1971, 6, 26, 19, 37, 12, 713269)
>>>str(p.time)
'1971-06-26 19:37:12.713275'