数据分析与挖掘|python 中数组的基本操作
文章目录
- 前言
- 一、numpy是什么?
- 二、使用步骤
- 1.引入库
- 2.读入数据
- 总结
前言 在python中本身有着列表等数据结构,但是列表只是一种数据的存储容器,不具备任何计算能力。
故引入数组的概念。
提示:以下是本篇文章正文内容,下面案例可供参考
一、numpy是什么? NumPy是一种非常常用的第三方模块,在学习数据分析及挖掘时经常能够用到他。接下来就阐述一些使用numpy进行的基本操作。
二、使用步骤 1.引入库 代码如下(示例):
import numpy as np
2.使用数组的基本案例 (1)创建一个长度为10,元素全为0的ndarray对象;可以使用numpy中的zeros函数
array1=np.zeros(10)
print(array1)
输出:
【数据分析与挖掘|python 中数组的基本操作】
文章图片
?
(2)将第3个元素改为5,第6个元素改为11
import numpy as np
array1=np.zeros(10)
array1[2]=5
array1[5]=11
print(array1)
输出:
文章图片
?
(3)查看数组元素的数据类型
import numpy as np
array1=np.zeros(10)
array1[2]=5
array1[5]=11
print(type(array1))
输出:
文章图片
?
3.二维数组的使用
(1)创建一个包含从10到25的16个元素的4*4的二维数组;
import numpy as np
array1=np.arange(10,26).reshape(4,4)
print(array1)
我们可以利用arange函数先创建一个由10到25的数组,再利用reshape函数改变其结构,使其变为4*4的二维数组
输出:
文章图片
? (2)打印输出第二行、第二列的元素;
import numpy as np
array1=np.arange(10,26).reshape(4,4)
print(array1[1][1])
输出:
文章图片
?
(3)打印输出第一行和第二行的元素;
import numpy as np
array1=np.arange(10,26).reshape(4,4)
print(array1[0:2][:])
在调用数组时可以有多种格式,如array[0:2,:]
输出:
文章图片
?
(4)打印输出第一行、第三行、第一列、第三列的元素;
import numpy as np
array1=np.arange(10,26).reshape(4,4)
print(array1[0:3:2,0:3:2])
输出:
文章图片
?将步长设为2就可以跳过中间的一行来输出。此时如果我们使用 array1[0:3:2][0:3:2]这种写法时会发现输出的数字会自动变成同一行
import numpy as np
array1=np.arange(10,26).reshape(4,4)
print(array1[0:3:2][0:3:2])
输出:
文章图片
?
4.数组的基本运算
(1)创建一个3*3*3的三维数组arr1,包含元素0~26;
import numpy as np
arr1=np.arange(0,27).reshape(3,3,3)
print(arr1)
与创建二维数组时相同的方法创建一个0到26的3*3*3数组
输出:
文章图片
?
(2)计算数组中各元素的平方根,得到一个新的三维数组arr2;
import numpy as np
arr1=np.arange(0,27).reshape(3,3,3)
arr2=np.sqrt(arr1)
print(arr2)
利用sqrt函数可以计算数组中各个数字的算术平方根
文章图片
?
如果我们在数组中存在负数时输出会有警告并且会显示nan
import numpy as np
arr1=np.arange(-27,0).reshape(3,3,3)
arr2=np.sqrt(arr1)
print(arr2)
输出:
文章图片
?
(3)将arr2中的小于3的元素,改为9,其余不变;
import numpy as np
arr1=np.arange(0,27).reshape(3,3,3)
arr2=np.sqrt(arr1)
arr2=np.where(arr2<3,9,arr2)
print(arr2)
利用np.where函数来删选符合条件的数据。np.where函数是根据其判断条件来执行不同的分支语句。
输出:
文章图片
?
(4)取出arr1中所有小于arr2中的元素,放在数组arr3中;
import numpy as np
arr1=np.arange(0,27).reshape(3,3,3)
arr2=np.sqrt(arr1)
arr2=np.where(arr2<3,9,arr2)
arr3=arr1[arr1
在使用比较运算符时其返回的一定是一维数组
输出:
文章图片
?
总结 本文为一些基础的numpy函数的操作,其中还有大量的功能没有使用。
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- Docker应用:容器间通信与Mariadb数据库主从复制
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量
- 第326天
- Shell-Bash变量与运算符
- 逻辑回归的理解与python示例
- Guava|Guava RateLimiter与限流算法
- 我和你之前距离
- CGI,FastCGI,PHP-CGI与PHP-FPM
- 原生家庭之痛与超越