2017-07-30 29 views
2

我有以下的數組:如何重新整形列表數組?

array([ list(['4.224609607748e+00', '4.085857782359e+00', '1.273383604708e+00', '-6.802974691818e-03']), 
    list(['9.099528133406e-03', '6.867550219273e-03', '5.859231188647e-03', '3.684441849425e-03']), 
    list(['5.836775773317e-04', '-2.316776085880e-16', '-1.456850991492e-16', '-2.307897076406e-17']), 
    list(['4.140895678156e-03', '2.603906355541e-03', '4.125025757803e-04', '-1.739011495381e-03']), 
    list(['-1.681896173898e-03', '-5.241735641835e-04', '-1.739011375813e-03', '-1.681896058258e-03']), dtype=object) 

我想修改它,使得它不再是6所列出的陣列,但是形狀(6,4)的陣列(即,每個浮點數是數組中的一個元素)。我也想將dtype改成float(我無法做到,因爲它不會將列表識別爲浮動)。

有沒有辦法可以做到這一點?

謝謝!

+1

,但最後一排只有一個字符串? –

+1

這是不可能的。您的列表是一個粗糙的數組。 –

+0

即使我刪除最後一行? – pennypeat

回答

1

你只需要:

a = np.asarray([list(map(float, item)) for item in a]) 
+0

嗯,這似乎不工作。形狀仍然是一樣的。 – pennypeat

+0

怎麼回事?我在刪除最後一行後進行測試,最終形狀正好是(5,3)。 – logen

+0

哦,對不起,你是對的!非常感謝! – pennypeat