我必須在不使用熊貓或其他東西的情況下做到這一點,只是純粹的麻木
我從 CSV 檔案ndarray中numpy.str_讀取了大量內容,我想將每列的每個元素轉換為特定型別。例如,我知道在第二列中會有一個整數,我想將第一列的所有元素轉換為numpy.float,將第二列的每個元素轉換為numpy.int等等,有沒有辦法優雅地實作它?
有沒有辦法指定當我轉換list為ndarraywith時應該將什么元素轉換為什么型別np.array(),以某種方式使用 dtype?
我試圖找到一些東西并找到了這個https://numpy.org/doc/stable/user/basics.rec.html#structured-arrays但我認為這不是我想要的。如果是,可以向我解釋如何在我的情況下使用它。
感謝你的幫助。
例子:
我有 [['1', '1.6', 'hey']['2', '5', 'tr5']]
我如何得到類似的東西
array([1, 1.6, 'hey'][2, 5.0, 'tr5'])
uj5u.com熱心網友回復:
是的,結構化陣列正是您所需要的。
您必須按如下方式傳遞dtype引數:
np.array(data, dtype=[(name1, type1), (name2, type2), ...])
其中 data 是帶有欄位的元組串列。
您必須將原始陣列轉換為該結構。
如果您不需要名稱,只需輸入空 str。
你也可以把 dtype 引數作為 dtype=np.dtype(type1, type2,...)
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/341411.html
標籤:Python 蟒蛇-3.x 麻木的 数据科学 numpy-ndarray
