2003031125—阮星宇—Python数据分析第三周作业—numpy的简单操作

项目 内容
课程班级博客链接 https://edu.cnblogs.com/campus/pexy/20sj
这个作业要求链接 https://edu.cnblogs.com/campus/pexy/20sj/homework/12540
博客名称 2003031125—阮星宇—Python数据分析第三周作业—numpy的简单操作
要求 每道题要有题目,代码(使用插入代码,不会插入代码的自己查资料解决,不要直接截图代码!!),截图(只截运行结果)

 

 

 

 

 

 

 

 

题目一:扩展阅读心得体会

1.扩展阅读:Python3及pip、numpy、Matplotlib等模块的安装

因为上学期我系统崩了重新做了系统然后重新下载pychar,我按照阅读中的安装pip 等,但是我发现利用pip模块安装numpy这里我不知道怎么安装。pychar安装模块有点负责,

我们之前上python用spyder安装过numpy模块,然后我用spyder软件完成的本次作业。

2.扩展阅读:Numpy常用方法

numpy提供了一种数据类型的多维数组,要掌握数组的索引与变换的方法。首先要学会如何简单的创建数组。用size,shape,ndim,dtype.来查看数组对应的属性。用zero创建出

来的数组为都是零的数组,用noes来创建的数组都是为一的数组。要基本的学会用函数来计算数组的方差,均值等等。要注意矩阵的计算规则。还要记得矩阵的垂直拼接的函数

vsrack和水平拼接的函数hstack,垂直拼接的时候要两个矩阵的行数相同而水平拼接的时候要让两个函数的列数相同。

题目二

实训一:

1.训练要点

(1)掌握Nuympy的数组的创建及随机数的生成。

(2)掌握Nuympy中用于统计分析的基本运算函数。

2.需求说明

Numpy数组在数值运算方面的效率优于python提供的list,所以灵活掌握numpy中数组的创建以及基础的运算是有必要的。

3.实现思路及步骤

(1)创建一个数值范围为0~1,间隔为0.01的数组。

(2)创建100个服从正态分布的随机数。

(3)对创建的两个数组进行四则运算。

(4)对创建的随机数组进行简单的统计分析。

4.运行代码和截图

import numpy as np
'''1、创建一个数值范围为0~1,间隔为0.01的数组'''
arr1=np.arange(0,1,0.01)
print("arange函数创建的数值范围为0~1间隔为0.01的数组arr1为:\n",arr1)
'''2、创建由100个服从正态分布的随机数构成的数组'''
arr2=np.random.randn(100)
print('生成的服从正态分布的随机数组arr2为:\n',arr2)
'''3、对创建的两个数组进行四则运算'''
print('arr1 + arr2:\n',arr1+arr2)
print('arrl-arr2:\n',arr1-arr2)
print('arrl*arr2:\n',arr1*arr2)
print('arrl/arr2:\n',arr1/arr2)
'''4、对创建的数组进行简单的统计分析'''
print('正态分布数数组的累计和为:\n',np.cumsum(arr2))#计算所有元素的累计和
print('正态分布数去重后的值组为:\n',np.unique(arr2))#去除重复值
print('正态分布数组的均值为:',np.mean(arr2))#计算数组均值
print('正态分布数组的标准差为:',np.std(arr2))#计算数组标准差
print('正态分布数组的方差为:',np.var(arr2))#计算数组方差
print('正态分布数组的最小值为:',np.min(arr2))#计算最小值
print('正态分布数组的最大值为:',np.max(arr2))#计算最大值
print('正态分布数组的总和为:',np.sum(arr2))#计算数组总和

 

  

实训二

1.训练要点

(1)掌握矩阵创建方法。
(2)掌握数组索引的方法。
2.需求说明
创建国际象棋棋盘,填充8x8矩阵。国际象棋棋盘是个正方形,由横纵向8格、颜色一深一浅交错排列的64个小方格组成,深色格为黑格,浅色格为白格,棋子就在这些格子中移动,如图2-3所示。

 3.实验思路及步骤

(1)创建一个8×8矩阵。

(2)把1、3、5、7行和2、4、6列的元素设置为1。

4.运行代码和截图

import numpy as np
a=np.ones((8,8))
for i in range(8):
    for j in range(8):
        if (i+j)%2==0:
            a[i,j]=0
print('国际棋盘对应的8*8矩阵为:',a)
for i in range(0,8):
    for j in range(0,8):
        if a[i,j]==0:
            print("",end=' ')
        else:
            print("", end=' ')
    print('\n')

 

posted @ 2022-03-23 18:24  阮阮子  阅读(83)  评论(0)    收藏  举报