文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Numpy库常用函数汇总:实现数据分析与建模的利器

2024-01-19 08:41

关注

Numpy是Python中最常用的数学库之一,它集成了许多最佳的数学函数和操作。Numpy的使用非常广泛,包括统计、线性代数、图像处理、机器学习、神经网络等领域。在数据分析和建模方面,Numpy更是必不可少的工具之一。本文将分享Numpy常用的数学函数,以及使用这些函数实现数据分析和建模的示例代码。

一、创建数组

使用Numpy中array()函数可以创建一个数组,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(arr)

这会输出 [1 2 3 4 5],表示创建了一个一维数组。

我们还可以创建一个二维数组,代码示例:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr)

这会输出:

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

表示创建了一个二维数组。

二、数组属性

使用Numpy中的ndimshapesize属性可以获取数组的维度、形状和元素个数,代码示例:

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr.ndim)  # 输出 2,表示数组是二维的
print(arr.shape)  # 输出 (2, 3),表示数组有2行3列
print(arr.size)  # 输出 6,表示数组有6个元素

三、数组的运算

Numpy数组可以进行加、减、乘、除等运算。首先看一下给数组加一个标量的运算,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(arr + 2)  # 输出 [3 4 5 6 7]

表示数组中的每个元素都加上了2。

接下来是两个数组相加的运算,代码示例:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
print(arr1 + arr2)  # 输出 [5 7 9]

表示两个数组中对应的元素相加。

Numpy还提供了一些特定的运算,例如:

四、数组的索引和切片

我们可以使用下标来访问数组中的元素,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(arr[0])  # 输出 1,表示数组中的第一个元素

我们还可以对数组进行切片操作,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(arr[1:4])  # 输出 [2 3 4],表示从数组中取出第2个到第4个元素

五、数组形状的变换

Numpy中提供了一些函数用于改变数组的形状,其中之一是reshape()函数。我们可以使用reshape()函数重塑数组的形状,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(arr.reshape(5, 1))

这会返回一个形状为(5, 1)的二维数组:

[[1]
 [2]
 [3]
 [4]
 [5]]

六、数组的合并与拆分

Numpy中提供了一些函数用于合并和拆分数组。

我们可以使用concatenate()函数将两个数组沿着某个维度合并,代码示例:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
print(np.concatenate((arr1, arr2)))  # 输出 [1 2 3 4 5 6]

我们还可以使用vstack()hstack()函数将两个数组水平或垂直堆叠在一起,代码示例:

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

# 垂直堆叠
print(np.vstack((arr1, arr2)))  # 输出 [[1 2 3] [4 5 6]]

# 水平堆叠
print(np.hstack((arr1, arr2)))  # 输出 [1 2 3 4 5 6]

我们还可以使用split()函数将一个数组拆分成多个数组,代码示例:

import numpy as np

arr = np.array([1, 2, 3, 4, 5])
print(np.split(arr, 5))  # 输出 [array([1]), array([2]), array([3]), array([4]), array([5])]

这会将数组拆分成5个一维数组,每个数组中只包含一个元素。

七、综合示例

现在,我们将使用Numpy中的函数实现一个简单的数据分析和建模的例子。

示例:假设你有100个学生的成绩,你想计算他们的平均成绩、最高成绩和最低成绩。

首先,我们用random()函数生成100个随机数,并使用mean()max()min()函数计算它们的平均值、最高值和最低值,代码示例:

import numpy as np

grades = np.random.randint(50, 100, 100)  # 生成50到100之间的100个随机数
print("平均成绩:", np.mean(grades))
print("最高成绩:", np.max(grades))
print("最低成绩:", np.min(grades))

接下来,我们将使用histogram()函数生成一个成绩的直方图,代码示例:

import matplotlib.pyplot as plt
import numpy as np

grades = np.random.randint(50, 100, 100)  # 生成50到100之间的100个随机数
hist, bins = np.histogram(grades, bins=10, range=(50, 100))

plt.hist(grades, bins=10, range=(50, 100))
plt.show()

最后,我们将使用percentile()函数计算成绩的百分位数,代码示例:

import numpy as np

grades = np.random.randint(50, 100, 100)  # 生成50到100之间的100个随机数
print("90%的成绩高于:", np.percentile(grades, 90))

以上就是本文总结的Numpy常用函数,这些函数可以帮助我们实现数据分析和建模。希望这些示例代码可以帮助读者更好地理解。

以上就是Numpy库常用函数汇总:实现数据分析与建模的利器的详细内容,更多请关注编程网其它相关文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯