[英]Convert numpy.void to numpy.ndarray
我已經用numpy.genfromtxt
在 python 中加載了一個 .csv 文件。 現在它返回一個一維numpy.ndarray
,在該數組中, numpy.void
對象實際上只是整數數組。 但是我想將這些從numpy.void
類型numpy.void
為numpy.array
。 澄清:
>>> print(train_data.shape)
(42000,)
>>> print(type(train_data[0]))
<class 'numpy.void'>
>>> print(train_data[0])
(9, 0, 0)
所以這里類型為numpy.void
的數組 (9, 0, 0) 應該是一個numpy.array
。
如何將train_data
所有值轉換為 numpy 數組?
效率也有些重要,因為我正在處理大量數據。
還有一些代碼
>>> with open('filename.csv, 'rt') as raw_training_data:
>>> train_data = numpy.genfromtxt(raw_training_data, delimiter=',', names=True, dtype=numpy.integer)
>>> print(train_data.dtype)
[('label', '<i4'), ('pixel0', '<i4'), ('pixel1', '<i4')]
>>> print(type(train_data))
<class 'numpy.ndarray'>
使用numpy.asarray()
方法,它將輸入轉換為數組
array=numpy.asarray(train_data[0])
我知道現在回答這個為時已晚。 但是由於這個問題中提供的解決方案,我找到了一個類似問題的解決方案。 如果您可以將 train_data 轉換為列表,然后將其轉換為 numpy 數組,那么就可以為您完成這項工作。
print(np.array(train_data.tolist()).shape)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.