【深耕 Python】Data Science with Python 数据科学(4)(书337页)练习题及解答

写在前面

关于数据科学环境的建立,可以参考我的博客:

【深耕 Python】Data Science with Python 数据科学(1)环境搭建

往期数据科学博文:

【深耕 Python】Data Science with Python 数据科学(2)jupyter-lab和numpy数组

【深耕 Python】Data Science with Python 数据科学(3)Numpy 常量、函数和线性空间

Question 1

What happens if the dimensions in reshape() don’t match the array size (e.g. np.arange(16).reshape((4, 17)))?

jupyter 代码片段:

import numpy as np
a = np.arange(16).reshape((4, 17))

输出结果:

在这里插入图片描述

Question 2

Confirm that A = np.random.rand(5, 5) lets you define a 5 x 5 random matrix.

jupyter 代码片段:

A = np.random.rand(5, 5)
print(A)
A

输出结果:

在这里插入图片描述

Question 3

Find the inverse Ainv of the 5 x 5 matrix in the previous exercise. (Calculating the inverse of a 2 x 2 matrix as in Section 11.2.2 is fairly simple by hand, but the task rapidly gets harder as the matrix size increases, in which case a computational system like NumPy is indispensable.)

jupyter 代码片段:

Ainv = np.linalg.inv(A)
print(Ainv)
Ainv

输出结果:

在这里插入图片描述

Question 4

What is the matrix product I = A @ Ainv of the matrices in the previous two exercises? Use the same isclose() trick from Listing 11.7 to zero out the elements of I close to zero and confirm that the resulting matrix is indeed the 5 x 5 identity matrix.

jupyter 代码片段:

I = A @ Ainv
print(I)
I[np.isclose(I, 0)] = 0
I

输出结果:

在这里插入图片描述

在这里插入图片描述

参考文献 Reference

《Learn Enough Python to be Dangerous——Software Development, Flask Web Apps, and Beginning Data Science with Python》, Michael Hartl, Boston, Pearson, 2023.

  • 11
    点赞
  • 28
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不是AI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值