我有一个文本文件,其中包含一个大字符串,它最初是SQL列中的二进制blob。我想使用numpy.genfromtxt
读取数据,并将文本转换为1D numpy数组,然后转换为二进制blob,以便稍后使用converters参数导入到SQL中:
np.genfromtxt(data, delimiter='\t',
dtype = [ ("a", 'f8'), ("b", 'U100'), ("c", 'f8') ],
converters = {1: lambda x: sqlite3.Binary(
np.fromstring(x, dtype='f4', sep=' '))})
输入文件应该是这样的:
1.0\t1.0 2.0 3.0\t1.0
但是,这会显示错误消息:
^{pr2}$我希望genfromtxt返回一个数组,其中第一列和第三列将包含浮点值,第二列包含sqlite3.Binary blob数据和1D numpy数组。在
这不起作用,所以我将数据读入genfromtxt输出中的一个大字符串中,然后在将数据写入数据库之前对其进行处理。是否可以在numpy数组中包含sqlite3.Binary对象?在
您只需将列},那么它就可以工作了。在
b
的类型从类型'U100'
切换到{相关问题 更多 >
编程相关推荐