我怎么将一个60000,784的numpy转化为mnist
时间: 2024-02-20 12:57:18 浏览: 20
可以使用以下代码将一个60000x784的numpy数组转化为paddlepaddle的mnist数据类型:
```python
import paddle.dataset.mnist as mnist
import numpy as np
# 加载mnist数据集
train_data, test_data = mnist.train(), mnist.test()
# 将numpy数组转化为mnist数据类型
train_set = [(x.astype('float32'), y.astype('int64')) for x, y in zip(train_data[0], train_data[1])]
test_set = [(x.astype('float32'), y.astype('int64')) for x, y in zip(test_data[0], test_data[1])]
# 将60000x784的numpy数组转化为mnist数据类型
my_data = np.random.rand(60000, 784) # 假设my_data是你的numpy数组
my_set = [(x.astype('float32'), y.astype('int64')) for x, y in zip(my_data, np.zeros(60000))]
# 将my_set添加到train_set后面
train_set += my_set
# 打印转化后的数据类型
print(type(train_set), type(test_set))
```
其中,`train_data`和`test_data`是paddlepaddle内置的mnist数据集,返回的是numpy数组类型。`train_set`和`test_set`是将numpy数组转化为paddlepaddle的mnist数据类型后的训练集和测试集。`my_data`是你的60000x784的numpy数组,通过将其转化为mnist数据类型,得到`my_set`。最后,将`my_set`添加到`train_set`后面即可。