Python数据分析篇--NumPy--入门

简介: Python数据分析篇--NumPy--入门

NumPy相关知识

1. NumPy,全称是 Numerical Python,它是目前 Python 数值计算中最重要的基础模块。

2. NumPy 是针对多维数组的一个科学计算模块,这个模块封装了很多数组类型的常用操作。

3. NumPy 中最重要的对象是多维数组。

创建多维数组

1. 将一个列表作为参数传入 numpy 中的 array() 方法即可创建一个多维数组。


2. 我们也可以使用 numpy 中的 ones() 方法或者 zeros() 方法。


3. np.ones() 和 np.zeros() 的参数用于指定生成的多维数组里有多少个元素。


4. 默认生成的是浮点数,numpy 会省略小数点后的 0,因此 1.0 和 0.0 变成了 1. 和 0.。


5. 如果我们想要生成整数的话,可以传入 dtype='类型' 来指定类型。


5. 一般我们使用 import numpy as np ,即用 np 来简写 numpy。

import numpy as np
list=np.array([1,2,3])
print(list)
print(type(list))
#输出结果
#[1 2 3]
#<class 'numpy.ndarray'>
 
one=np.ones(5)
print(one)
print(type(one))
#[1. 1. 1. 1. 1.]
#<class 'numpy.ndarray'>
 
zero=np.zeros(3)
print(zero)
print(type(zero))
#[0. 0. 0.]
#<class 'numpy.ndarray'>
 
one=np.ones(5,dtype='int')
print(one)
print(type(one))
#输出结果 [1 1 1 1 1]

1. 列表间只有加法操作,作用是将两个列表的元素合并在一起。

2. 而多维数组间可以进行加减乘除的四则运算。

3. 运算规则也很简单:将两个数组中对应位置的元素一一进行运算。

import numpy as np
 
data = np.array([1, 2])
ones = np.ones(2)
print(data + ones)
#最终输出 [2. 3.]
 
data = np.array([1, 2])
print(data + 1)
# 输出:[2 3]

多维数组的索引

1. 多维数组的索引与字符串、列表的索引规则相同。

1. data = np.array([1, 2, 3])
2. print(data[0])
3. #输出 1

多维数组的分片

1. 多维数组的分片与字符串、列表的分片规则相同。


2. data[m : n] ,分片是左闭右开区间,即包含 m 不包含 n。


3. 冒号前后的值是可以省略的:省略后冒号前默认为 0,冒号后默认为列表的长度。


4. 对列表分片后的数据进行更改不会影响原数据,但对多维数组分片后的数据进行更改会影响到原数据。


5. 分片支持传入第三个参数——步长,即分片时每隔几个数据取一次值。步长的默认值为 1,当步长为负数时,会将顺序反转。

data = np.array([1, 2, 3])
print(data[0:2])  # 获取索引为 0 和 1 的元素
# 输出:[1 2]
 
data = np.array([1, 2, 3])
# 获取前 2 个元素
print(data[:2])
# 输出:[1 2]
 
# 获取后 2 个元素
print(data[-2:])
# 输出:[2 3]
 
# 获取所有元素
print(data[:])
# 输出:[1 2 3]
 
lst_data = [1, 2, 3]
lst_data2 = lst_data[:]
lst_data2[0] = 6
print(lst_data)
# 输出:[1, 2, 3]
 
arr_data = np.array([1, 2, 3])
arr_data2 = arr_data[:]
arr_data2[0] = 6
print(arr_data)
# 输出:[6 2 3]
 
data = np.array([1, 2, 3, 4, 5, 6])
print(data[::2])  # 省略前两个参数
# 输出:[1 3 5]
 
data = np.array([1, 2, 3, 4, 5, 6])
print(data[::-1])  # 省略前两个参数
# 输出:[6 5 4 3 2 1]

简单的数据分析

集中趋势

1. 集中趋势所反映的是一组数据所具有的共同趋势,它代表了一组数据的总体水平。

2. 其常用指标有平均数、中位数和众数。


离中趋势

1. 离中趋势是指一组数据中各数据值以不同程度的距离偏离其中心(平均数)的趋势。


2. 其常用指标有极差、方差和标准差。


3. 极差是一组数据的最大值减去最小值得到的,反应了数据变动的最大范围。


4. 方差和标准差都能反映数据的离散程度,也就是数据的波动程度。方差和标准差的值越小,说明数据越稳定。  


数据分析操作方法

1. 在 numpy 上调用对应函数并传入数据如:np.std(data)。

import numpy as np
 
player1 = np.array([4, 16, 5, 8, 11, 40, 4, 12, 23, 13])
player2 = np.array([9, 8, 12, 11, 9, 10, 13, 10, 11, 13])
player3 = np.array([4, 6, 8, 5, 6, 7, 6, 5, 8, 6])
print("1号玩家平均数",np.median(player1))
print("2号玩家平均数",np.median(player2))
print("3号玩家平均数",np.median(player3))
print("1号玩家方差",np.std(player1))
print("2号玩家方差",np.std(player1))
print("3号玩家方差",np.std(player1))
 
#输出结果
#1号玩家平均数 11.5
#2号玩家平均数 10.5
#3号玩家平均数 6.0
#1号玩家方差 10.44222198576529
#2号玩家方差 10.44222198576529
#3号玩家方差 10.44222198576529

致谢

感谢您花时间阅读这篇文章!如果您对本文有任何疑问、建议或是想要分享您的看法,请不要犹豫,在评论区留下您的宝贵意见。每一次互动都是我前进的动力,您的支持是我最大的鼓励。期待与您的交流,让我们共同成长,探索技术世界的无限可能!

相关文章
|
21天前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
26天前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析的入门指南
本文将引导读者了解如何使用Python进行数据分析,从安装必要的库到执行基础的数据操作和可视化。通过本文的学习,你将能够开始自己的数据分析之旅,并掌握如何利用Python来揭示数据背后的故事。
|
22天前
|
IDE 程序员 开发工具
Python编程入门:打造你的第一个程序
迈出编程的第一步,就像在未知的海洋中航行。本文是你启航的指南针,带你了解Python这门语言的魅力所在,并手把手教你构建第一个属于自己的程序。从安装环境到编写代码,我们将一步步走过这段旅程。准备好了吗?让我们开始吧!
|
22天前
|
测试技术 开发者 Python
探索Python中的装饰器:从入门到实践
装饰器,在Python中是一块强大的语法糖,它允许我们在不修改原函数代码的情况下增加额外的功能。本文将通过简单易懂的语言和实例,带你一步步了解装饰器的基本概念、使用方法以及如何自定义装饰器。我们还将探讨装饰器在实战中的应用,让你能够在实际编程中灵活运用这一技术。
37 7
|
23天前
|
开发者 Python
Python中的装饰器:从入门到实践
本文将深入探讨Python的装饰器,这一强大工具允许开发者在不修改现有函数代码的情况下增加额外的功能。我们将通过实例学习如何创建和应用装饰器,并探索它们背后的原理和高级用法。
37 5
|
22天前
|
机器学习/深度学习 人工智能 算法
深度学习入门:用Python构建你的第一个神经网络
在人工智能的海洋中,深度学习是那艘能够带你远航的船。本文将作为你的航标,引导你搭建第一个神经网络模型,让你领略深度学习的魅力。通过简单直观的语言和实例,我们将一起探索隐藏在数据背后的模式,体验从零开始创造智能系统的快感。准备好了吗?让我们启航吧!
59 3
|
26天前
|
Python
Python编程入门:从零开始的代码旅程
本文是一篇针对Python编程初学者的入门指南,将介绍Python的基本语法、数据类型、控制结构以及函数等概念。文章旨在帮助读者快速掌握Python编程的基础知识,并能够编写简单的Python程序。通过本文的学习,读者将能够理解Python代码的基本结构和逻辑,为进一步深入学习打下坚实的基础。
|
29天前
|
设计模式 缓存 开发者
Python中的装饰器:从入门到实践####
本文深入探讨了Python中强大的元编程工具——装饰器,它能够以简洁优雅的方式扩展函数或方法的功能。通过具体实例和逐步解析,文章不仅介绍了装饰器的基本原理、常见用法及高级应用,还揭示了其背后的设计理念与实现机制,旨在帮助读者从理论到实战全面掌握这一技术,提升代码的可读性、可维护性和复用性。 ####
|
1月前
|
机器学习/深度学习 算法 数据挖掘
数据分析的 10 个最佳 Python 库
数据分析的 10 个最佳 Python 库
87 4
数据分析的 10 个最佳 Python 库
|
4月前
|
数据采集 数据可视化 数据挖掘
数据分析大神养成记:Python+Pandas+Matplotlib助你飞跃!
在数字化时代,数据分析至关重要,而Python凭借其强大的数据处理能力和丰富的库支持,已成为该领域的首选工具。Python作为基石,提供简洁语法和全面功能,适用于从数据预处理到高级分析的各种任务。Pandas库则像是神兵利器,其DataFrame结构让表格型数据的处理变得简单高效,支持数据的增删改查及复杂变换。配合Matplotlib这一数据可视化的魔法棒,能以直观图表展现数据分析结果。掌握这三大神器,你也能成为数据分析领域的高手!
93 2