假设我有以下 PyTable 列描述符:
import numpy as np
import tables as pt
class Date_t(pt.IsDescription):
year = pt.Int32Col(shape=(), dflt=2013, pos=0)
month = pt.Int32Col(shape=(), dflt=1, pos=1)
day = pt.Int32Col(shape=(), dflt=1, pos=2)
class Info(pt.IsDescription):
col1 = pt.Int32Col(shape=(), dflt=0, pos=0)
startdate = Date_t()
birthdate = Date_t()
col2 = pt.Int32Col(shape=(), dflt=0, pos=3)
enddate = Date_t()
col3 = pt.Int32Col(shape=(), dflt=0, pos=5)
col4 = pt.Int32Col(shape=(), dflt=0, pos=6)
如何指定“开始日期”、“出生日期”和“结束日期”的位置?
我以为我可以做类似的事情:
startdate = Date_t(pos=1)
birthdate = Date_t(pos=2)
并将 Date_t 类重新定义为:
class Date_t(pt.IsDescription):
def __init__(self, pos):
self._v_pos = pos
year = pt.Int32Col(shape=(), dflt=2013, pos=0)
month = pt.Int32Col(shape=(), dflt=1, pos=1)
day = pt.Int32Col(shape=(), dflt=1, pos=2)
但这给了我错误:
TypeError:object。new () 不带参数
有任何想法吗?