数据分析 -- numpy

numpy库简介

  1. 开源的Python库,它提供了高性能的多维数值计算能力;
  2. 由“Numerical Python”缩写而来,并且它是Pandas库的基础;
  3. NumPy提供了许多有用的功能,例如数组操作、矩阵运算、傅里叶变换等;
  4. 支持向量化编程,这使得它比传统的循环和条件语句更加高效;
  5. NumPy完全基于C语言实现,并且已经经过了充分的优化,因此它的运行速度非常快。

numpy操作

import numpy as np

数组创建

  • 创建一维数组
list = [1,2,3,4,5]
array = np.array(list)
print(array)
print(type(array))

>[1 2 3 4 5]
><class 'numpy.ndarray'>
  • 创建二维数组
list = [[1,2],[3,4],[5,6]]
array = np.array(list)
print(array)

>[[1 2]
 [3 4]
 [5 6]]
  • 创建等差一维数组
- np.arange(开始值,结束值,步长)

array = np.arange(1,10,2)
print(array)
>[1 3 5 7 9]
  • 创建一/多维数组
- np.zeros(shape, dtype=float, order='C'):创建一个元素全为0的数组
- np.ones(shape, dtype=None, order='C'):创建一个元素全为1的数组
- np.empty(shape, dtype=float, order='C'):创建一个未初始化的数组,元素随机
- np.full(shape, fill_value, dtype=None, order='C'):创建一个具有给定形状和填充值的数组
	- shape: 数组的性转
	- dtype: 数组元素数据类型
	- order:内存布局顺序,C-按行,F-按列

array = np.empty((2,4), dtype=np.int8)
print(array)
>[[ 96 -39 -22  70]
 [ 24  86   0   0]]
  • 创建随机数组
import numpy as np

# 创建服从均匀分布的随机数组
rand_array = np.random.rand(2, 3)
print("均匀分布的随机数组:\n", rand_array)

# 创建服从标准正态分布的随机数组
randn_array = np.random.randn(2, 3)
print("标准正态分布的随机数组:\n", randn_array)

# 创建指定范围的随机整数数组
randint_array = np.random.randint(1, 10, size=(2, 3))
print("指定范围的随机整数数组:\n", randint_array)

# 创建服从均匀分布的随机数组
random_array = np.random.random((2, 3))
print("均匀分布的随机数组:\n", random_array)

>均匀分布的随机数组:
 [[0.49018606 0.05014734 0.38739906]
 [0.09357898 0.98583039 0.6992634 ]]
>标准正态分布的随机数组:
 [[ 1.44017508  0.55562128 -0.11157242]
 [ 0.80112095  1.58158805  0.81131876]]
>指定范围的随机整数数组:
 [[7 6 9]
 [5 2 6]]
>均匀分布的随机数组:
 [[0.35562269 0.29418661 0.49925419]
 [0.76548519 0.70753405 0.02305559]]

数组属性

  • 数组索引
array = np.array([[1, 2, 3], [4, 5, 6]])
# 获取特定元素
print("第一个元素:", array[0, 0])
print("最后一个元素:", array[-1, -1])
# 获取特定行
print("第一行:", array[0, :])
print("第二列:",array[:, 1])

>第一个元素: 1
>最后一个元素: 6
>第一行: [1 2 3]
>第二列: [2 5]
  • 数组形状
# 创建数组
array = np.array([[1, 2, 3], [4, 5, 6]])
print(array.shape)

>(2, 3)
  • 数组维度/大小
array = np.array([[1, 2, 3], [4, 5, 6]])
print(array.ndim)
print(array.size)

> 2
> 6
  • 数组数据类型
array = np.array([[1, 2, 3], [4, 5, 6]])
print(array.dtype)

> int64

数组变更

  • 改变形状
# 创建数组
array = np.array([[1, 2, 3], [4, 5, 6]])
array = np.reshape(array, (3, 2))
print(array)

>[[1 2]
 [3 4]
 [5 6]]
  • 改变数据类型
array = np.array([[1, 2, 3], [4, 5, 6]])
array = array.astype(float)
print(array.dtype)

>float64
  • 数组切片
array = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
sub_array = array[0:2, 1:3]
print(sub_array)

>[[2 3]
 [5 6]]
  • 数组转置
my_array = np.array([[1, 2, 3], [4, 5, 6]])
transposed_array = np.transpose(my_array)
print(transposed_array)

>[[1 4]
 [2 5]
 [3 6]]

相关推荐

  1. 数据分析NumPy

    2024-04-03 05:08:09       37 阅读
  2. 数据分析NumPy

    2024-04-03 05:08:09       38 阅读
  3. 3 数据分析--Numpy

    2024-04-03 05:08:09       17 阅读
  4. 数据分析 -- numpy

    2024-04-03 05:08:09       16 阅读
  5. 数据分析-numpy

    2024-04-03 05:08:09       22 阅读
  6. 数据分析Numpy 数组处理

    2024-04-03 05:08:09       27 阅读
  7. python_数据分析_numpy

    2024-04-03 05:08:09       31 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-03 05:08:09       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-03 05:08:09       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-03 05:08:09       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-03 05:08:09       20 阅读

热门阅读

  1. 物联网虚拟仿真实验教学中心平台建设

    2024-04-03 05:08:09       15 阅读
  2. Python在数据分析与可视化中的深度实践

    2024-04-03 05:08:09       15 阅读
  3. .vimrc文件的语句语法

    2024-04-03 05:08:09       10 阅读
  4. 2024Mathorcup数学建模竞赛A题B题C题D题

    2024-04-03 05:08:09       16 阅读
  5. 服务器是争做时代先锋

    2024-04-03 05:08:09       11 阅读
  6. 【LeetCode热题100】【链表】K 个一组翻转链表

    2024-04-03 05:08:09       13 阅读
  7. LeetCode 20.有效的括号

    2024-04-03 05:08:09       15 阅读
  8. MyBatis数据库逆向生成工具

    2024-04-03 05:08:09       11 阅读
  9. 20款高级 Python 装饰器

    2024-04-03 05:08:09       11 阅读
  10. es6中的Object.assign

    2024-04-03 05:08:09       16 阅读