Numpy 数组的基本操作
import numpy as np
# 生成二维数组和一维数组
train_x = np.array([[1, 1], [1, 2], [3, 4], [5, 2]])
train_y = np.array([[-2], [-3], [-7], [-7]])
# 获取数组维度即轴的个数
print train_x.ndim
# 获取数组的各个维度的长度
print train_x.shape
# 数组支持打印
print train_y
#逐个打印数组中的元素
for i in train_x:
print i
迭代器
在使用Paddle时,可以通过创建迭代器iterator来组合数据与标签。
可以通过Python generator来创建迭代器,即generator是一个能够返回迭代器对象的函数。
定义generator函数与普通函数是类似的,仅是在返回值时使用yield即可。
![](https://i-blog.csdnimg.cn/blog_migrate/72608391458d2c93728cfd06412d8cb5.png)
创建Paddle中使用的reader¶
在Paddle中reader是一个函数对象,不能直接进行迭代,但该函数对象的执行结果是一个迭代器,可以从中获取数据内容:
- test_data_creator = paddle.dataset.uci_housing.test(),其中test_data_creator是一个函数对象
- test_data_creator()则是一个迭代器对象 获取reader中数据内容的代码样例如下所示,其中test_data是个列表,是可以打印的:
test_data_creator = paddle.dataset.uci_housing.test() test_data = [] test_label = [] for item in test_data_creator(): test_data.append((item[0],)) test_label.append(item[1]) if len(test_data) == 5: break
- PaddlePaddle内置的数据集,其实并没有提供查看函数,要想了解数据,最直接的还是从原地址下载查看。
启动paddlepaddle/book镜像后,可以在/usr/local/lib/python2.7/dist-packages/paddle/v2/dataset目录下查看各个数据集的定义的源代码,从中可以获取下载路劲
![](https://i-blog.csdnimg.cn/blog_migrate/b249311ca0be5d6bffc6c084359dd0c6.png)