前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >100个Numpy练习【1】

100个Numpy练习【1】

作者头像
YingJoy_
发布2018-03-21 10:16:52
2.9K0
发布2018-03-21 10:16:52
举报
文章被收录于专栏:应兆康的专栏应兆康的专栏

Numpy是Python做数据分析必须掌握的基础库之一,非常适合刚学习完Numpy基础的同学,完成以下习题可以帮助你更好的掌握这个基础库。

Python版本:Python 3.6.2

Numpy版本:Numpy 1.13.1

《100个Numpy练习【1】》
《100个Numpy练习【1】》
1. 导入numpy库并取别名为np (★☆☆)

(提示: import … as …)

代码语言:javascript
复制
import numpy as np
2. 打印输出numpy的版本和配置信息 (★☆☆)

(提示: np.__verison__, np.show_config)

代码语言:javascript
复制
print (np.__version__)
np.show_config()
3. 创建长度为10的零向量 (★☆☆)

(提示: np.zeros)

代码语言:javascript
复制
Z = np.zeros(10)
print (Z)
4. 获取数组所占内存大小 (★☆☆)

(提示: size, itemsize)

代码语言:javascript
复制
Z = np.zeros((10, 10))
print (Z.size * Z.itemsize)
5. 怎么用命令行获取numpy add函数的文档说明? (★☆☆)

(提示: np.info)

代码语言:javascript
复制
np.info(np.add)
6. 创建一个长度为10的零向量,并把第五个值赋值为1 (★☆☆)

(提示: array[4])

代码语言:javascript
复制
Z = np.zeros(10)
Z[4] = 1
print (Z)
7. 创建一个值域为10到49的向量 (★☆☆)

(提示: np.arange)

代码语言:javascript
复制
Z = np.arange(10, 50)
print (Z)
8**. 将一个向量进行反转(第一个元素变为最后一个元素)** (★☆☆)

(提示: array[::-1])

代码语言:javascript
复制
Z = np.arange(50)
Z = Z[::-1]
print (Z)
9. 创建一个3×3的矩阵,值域为0到8(★☆☆)

(提示: reshape)

代码语言:javascript
复制
Z = np.arange(9).reshape(3, 3)
print (Z)
10. 从数组[1, 2, 0, 0, 4, 0]中找出非0元素的位置索引 (★☆☆)

(提示: np.nonzero)

代码语言:javascript
复制
nz = np.nonzero([1, 2, 0, 0, 4, 0])
print (NZ)
11. 创建一个3×3的单位矩阵 (★☆☆)

(提示: np.eye)

代码语言:javascript
复制
Z = np.eye(3)
print (Z)
12. 创建一个3x3x3的随机数组(★☆☆)

(提示: np.random.random)

代码语言:javascript
复制
Z = np.random.random((3, 3, 3))
print (Z)
13. 创建一个10×10的随机数组,并找出该数组中的最大值与最小值(★☆☆)

(提示: max, min)

代码语言:javascript
复制
Z = np.random.random((10, 10))
Zmax, Zmin = Z.max(), Z.min()
print (Z.max, Z.min)
14. 创建一个长度为30的随机向量,并求它的平均值 (★☆☆)

(提示: mean)

代码语言:javascript
复制
Z = np.random.random(30)
mean = Z.mean()
print (mean)
15. 创建一个2维数组,该数组边界值为1,内部的值为0 (★☆☆)

(提示: array[1:-1, 1:-1])

代码语言:javascript
复制
Z = np.ones((10, 10))
Z[1:-1, 1:-1] = 0
print (Z)
16. 如何用0来填充一个数组的边界? (★☆☆)

(提示: np.pad)

代码语言:javascript
复制
Z = np.ones((10, 10))
Z = np.pad(Z, pad_width=1, mode='constant', constant_values=0)
print (Z)
17. 下面表达式运行的结果是什么?(★☆☆)

(提示: NaN = not a number, inf = infinity)

(提示:NaN : 不是一个数,inf : 无穷)

代码语言:javascript
复制
# 表达式                           # 结果
0 * np.nan                        nan
np.nan == np.nan                  False
np.inf > np.nan                   False
np.nan - np.nan                   nan
0.3 == 3 * 0.1                    False
18. 创建一个5×5的矩阵,且设置值1, 2, 3, 4在其对角线下面一行(★☆☆)

(提示: np.diag)

代码语言:javascript
复制
Z = np.diag([1, 2, 3, 4], k=-1)
print (Z)
19. 创建一个8×8的棋盘矩阵(填充为棋盘样式) (★☆☆)

(提示: array[::2])

代码语言:javascript
复制
Z = np.zeros((8, 8), dtype=int)
Z[1::2, ::2] = 1
Z[::2, 1::2] = 1
print (Z)
20. 思考一下形状为(6, 7, 8)的数组的形状,且第100个元素的索引(x, y, z)分别是什么?(★☆☆)

(提示: np.unravel_index)

代码语言:javascript
复制
print (np.unravel_index(100, (6, 7, 8)))
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 导入numpy库并取别名为np (★☆☆)
  • 2. 打印输出numpy的版本和配置信息 (★☆☆)
  • 3. 创建长度为10的零向量 (★☆☆)
  • 4. 获取数组所占内存大小 (★☆☆)
  • 5. 怎么用命令行获取numpy add函数的文档说明? (★☆☆)
  • 6. 创建一个长度为10的零向量,并把第五个值赋值为1 (★☆☆)
  • 7. 创建一个值域为10到49的向量 (★☆☆)
  • 8**. 将一个向量进行反转(第一个元素变为最后一个元素)** (★☆☆)
  • 9. 创建一个3×3的矩阵,值域为0到8(★☆☆)
  • 10. 从数组[1, 2, 0, 0, 4, 0]中找出非0元素的位置索引 (★☆☆)
  • 11. 创建一个3×3的单位矩阵 (★☆☆)
  • 12. 创建一个3x3x3的随机数组(★☆☆)
  • 13. 创建一个10×10的随机数组,并找出该数组中的最大值与最小值(★☆☆)
  • 14. 创建一个长度为30的随机向量,并求它的平均值 (★☆☆)
  • 15. 创建一个2维数组,该数组边界值为1,内部的值为0 (★☆☆)
  • 16. 如何用0来填充一个数组的边界? (★☆☆)
  • 17. 下面表达式运行的结果是什么?(★☆☆)
  • 18. 创建一个5×5的矩阵,且设置值1, 2, 3, 4在其对角线下面一行(★☆☆)
  • 19. 创建一个8×8的棋盘矩阵(填充为棋盘样式) (★☆☆)
  • 20. 思考一下形状为(6, 7, 8)的数组的形状,且第100个元素的索引(x, y, z)分别是什么?(★☆☆)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档