我需要一些方法将数据帧类型映射到python-ish类型(稍微自定义映射)。现在我正在这样做:
def get_p_type(n_type):
if numpy_type in [numpy.float16, numpy.float32, numpy.float64]:
return "float"
elif numpy_type in [numpy.datetime64]:
return "datetime"
else:
return "string"
def main():
data_frame = pandas.DataFrame({"foo":datetime.datetime.now()}, index=[0])
for column in data_frame.columns:
print(get_p_type(data_frame[column].dtype))
这适用于浮点数,但不适用于日期时间。我设置了一些调试打印语句,我看到上面代码中的n_type实际上是'datetime64 [ns]',所以我得到一个字符串。我没有看到任何类似的任何类型的numpy类型。
有更好的方法吗?如果没有,有没有办法解决上述日期时间问题?