我有一个由53个3D点组成的列表,我将列表转换为numpy数组,然后我有一个(53,)形状数组。每行由三个浮点组成,用逗号分隔(例如a_t[0]= 73.72,32.27,74.95)。有人知道如何将这个numpy数组转换为(53,3)吗?换句话说,我想为每个xyz坐标将每行拆分为三列。先谢谢你了。
yfjy0ee71#
假设数组名为points,并且numpy已经被导入:
points
newpoints = numpy.array([x.split(',') for x in points], dtype=numpy.float)
w51jfk4q2#
数组中的元素是字符串而不是数字。你可以循环遍历这个(53,)字符串数组中的每一行,使用split(',')在逗号处分割每一行,并将结果放入一个新的numpy数组中,该数组具有数值数据类型:
(53,)
split(',')
a = np.array(['1,2,3','4,5,6','7,8,9','10,11,12']) b = np.array([l.split(',') for l in a],dtype=np.float32)
brjng4g33#
这是给其他正在奋斗的人的:
import numpy as np newpoints = np.array([np.split(x, 3) for x in points], dtype=np.float32)
3条答案
按热度按时间yfjy0ee71#
假设数组名为
points
,并且numpy已经被导入:w51jfk4q2#
数组中的元素是字符串而不是数字。你可以循环遍历这个
(53,)
字符串数组中的每一行,使用split(',')
在逗号处分割每一行,并将结果放入一个新的numpy数组中,该数组具有数值数据类型:brjng4g33#
这是给其他正在奋斗的人的: