将数据类型分配给numpy数组

时间:2017-12-20 11:56:39

标签: python arrays numpy

我有一个字符串列表

    ls = ["1 , abc , 3.3" , "1 , def , 3.245" , "1 , ghi , 9.34"]

我必须将其转换为具有适当数据类型的3x3 numpy数组,即转换为

    array([[1, 'abc', 3.3],
           [1, 'def', 3.245],
           [1, 'ghi', 9.34]])

我目前正在使用以下代码将字符串列表转换为数组:

    new_array = np.array([i.split(' , ') for i in ls])

但我得到的结果是:

    array([['1', 'abc', '3.3'],
           ['1', 'def', '3.245'],
           ['1', 'ghi', '9.34']])

并使用以下代码进行类型转换:

    new_arr[:,0] = new_arr[:,0].astype(int)
    new_arr[:,1] = new_arr[:,1].astype(str)
    new_arr[:,2] = new_arr[:,0].astype(float)

如何获得具有特定数据类型的所需数组?

0 个答案:

没有答案