python知识记录:灵活使用numpy提高python数据分析效率!

Python数据分析实战:Numpy、Pandas、Matplotlib黄金三角工作流 数据分析的核心在于将原始数据转化为有效洞察的系统化流程。其基础原理是通过数据清洗、转换、聚合与可视化等一系列标准化步骤,挖掘数据中的模式与价值。在技术实现上,Python生态提供了高效的工具链:Numpy作为底层计算引擎,负责高效的数值运算;Pandas构建于Numpy之上,提供了DataFrame这一核心数据结构,成为数据清洗、整理与探索性分析(EDA)的主战场;Matplotlib则作为可视化层,将分析结果转化为直观图表。这套技术组合的价值在于形成了从数据加载、处理、分析到展示的完整闭环,极大地提升了数 阅读详情

NumPy是Python语言的一个第三方库,其支持大量高维度数组与矩阵运算。

作为python科学计算领域的三剑客之一,numpy在数据分析处理方面有着独特的魅力!

图片

numpy模块的出现更多的是在数组处理的操作上面,并且支持和python常用的数据结构list之间的相互转换操作。

1、数组初始化

数组初始化即创建数组,numpy提供了相当多的创建不同结构的数组的方式,合理的利用这些数据初始化的操作能够让我们的开发事半功倍。

numpy目前最多可以支持三维数组的创建,下面我们直接通过实例来说明其使用技巧。

# 导入数据处理的numpy模块
import numpy as np

# 通过python列表list创建numpy一维数组
array_ = np.array(['a', 'b', 'c'])

# 控制台打印一维数组
print(array_)
# ['a' 'b' 'c']

# 通过python列表list创建numpy二维数组
array_ = np.array([('a', 'b', 'c'), (1, 2, 3)])

# 控制台打印二维数组
print(array_)
# [['a' 'b' 'c']
#  ['1' '2' '3']]

# 创建四行五列的二维数组,并填充值为1,可通过full函数创建任意的二维数组
array_ = np.full((5, 6), 1)

# 控制台打印任意的行、列的二维数组
print(array_)
# [[1 1 1 1 1 1]
#  [1 1 1 1 1 1]
#  [1 1 1 1 1 1]
#  [1 1 1 1 1 1]
#  [1 1 1 1 1 1]]

# 创建任意行、列的二维数组,并且填充值为随机数
array_ = np.random.rand(3, 4)

# 控制台打印随机数的二维数组
print(array_)
# [[0.94372258 0.66743021 0.47003813 0.44912263]
#  [0.71435389 0.47909147 0.52322176 0.32445311]
#  [0.9843635  0.14054129 0.10611754 0.45922036]]

上述便是常用的numpy模块关于数组的初始化方式,灵活应用几种array数组的创建方式能够解决在业务开发过程中的很多问题。

2、数组元素计算

除了numpy的数组的初始化方式,关于numpy数据元素的计算是开发过程中常常会使用的计算方式。

numpy模块提供的很多计算函数不仅简便,而且执行效率更高。有时候比我们自己写的函数运行速度甚至高出几倍不止。

下面就来看看在日常的数据处理过程中常用的几种数据处理函数的使用过程。

# array函数初始化多维度数组
array_ = np.array([(1, 2),
                   (3, 4), (5, 6)])

# sum函数计算多维度数组每一列的和
sum_ = np.sum(array_)

# 打印数组计算结果
print(sum_)
# 21

# mean函数计算多维度数组的平均值
mean_ = np.mean(array_)

# 打印数组计算结果
print(mean_)
# 3.5

# tile函数使元数组变成多行多列的形式,相当于复制的效果
tile_ = np.tile(array_, (3, 4))

# 打印计算结果
print(tile_)
# [[1 2 1 2 1 2 1 2]
#  [3 4 3 4 3 4 3 4]
#  [5 6 5 6 5 6 5 6]
#  [1 2 1 2 1 2 1 2]
#  [3 4 3 4 3 4 3 4]
#  [5 6 5 6 5 6 5 6]
#  [1 2 1 2 1 2 1 2]
#  [3 4 3 4 3 4 3 4]
#  [5 6 5 6 5 6 5 6]]

# 初始化二维数组
array_ = np.array([[3, 6, 4, 11],
                   [5, 10, 1, 3]])

# argsort函数完成对数组的排序操作
argsort_ = array_.argsort()

# 打印计算结果
print(argsort_)
# [[0 2 1 3]
#  [2 3 0 1]]

# argsort函数完成对数组列值的排序操作
argsort_ = array_.argsort(axis=0)

# 打印计算结果
print(argsort_)
# [[0 0 1 1]
#  [1 1 0 0]]

注意:上述的排序结果返回的是源数组的排序后的下标。

除了上述的numpy数组计算的基本操作,最常用的就是下面的numpy数组的加、减、乘、除计算。

通过数组的加、减、乘、除计算能够满足我们在业务开发过程中的绝大多数的计算操作。

# 初始化两个数组a_、b_分别用于下面的逻辑计算
a_ = np.array([1, 2, 3, 4])
b_ = np.array([5, 6, 7, 8])

# 计算两个一维数组的和
result_ = a_ + b_

# 打印计算结果
print(result_)
# [ 6  8 10 12]

# 计算两个一维数组的差
result_ = a_ - b_

# 打印计算结果
print(result_)
# [-4 -4 -4 -4]

# 计算两个一维数组的乘积
result_ = a_ * b_

# 打印计算结果
print(result_)
# [ 5 12 21 32]

# 计算两个一维数组的商
result_ = a_ / b_

# 打印计算结果
print(result_)
# [0.2        0.33333333 0.42857143 0.5       ]

除了上述的一维数组的相关计算,同时numpy还可支持二维矩阵的逻辑计算。

3、数组元素提取

数组元素的提取其实主要还是对数组的下标索引的相关操作。

numpy提供的多维数组同样能够使用对应的索引位置提取出相应的值。

# 初始化二维数组
array_ = np.array([[3, 6, 4, 11],
                   [5, 10, 1, 3]])

# 提取第二行、第四列的值
value_ = array_[1, 3]

# 打印计算结果
print(value_)
# 3

# 提取出倒数第二行、第三列到第四列之间的二维数组
value_ = array_[-2:, 2:3]

# 打印计算结果
print(value_)
# [[4]
#  [1]]

# 获取数组中大于、小于、等于某个数值的结果
result_ = array_ >= 10

# 打印计算结果
print(result_)
# [[False False False  True]
#  [False  True False False]]

# 返回的数组中,所在位置为True的数值就是符合逻辑计算的数值。

多维数组的索引的数值提取操作,能够辅助我们完成更加复杂的数据处理操作。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

二、Python必备开发工具

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、Python练习题

检查学习结果。

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

 最后祝大家天天进步!!

上面这份完整版的Python全套学习资料已经上传至优快云官方,朋友如果需要可以直接微信扫描下方优快云官方认证二维码免费领取【保证100%免费】。

《Python 数据分析学习心得》 在信息爆炸的时代,数据的价值日益凸显。为了能够从海量的数据中提取有价值的信息,洞察潜在的趋势和规律,我满怀热情地投入到 Python 数据分析的学习之中。我的初衷是通过掌握这一技能,为个人的职业发展和解决实际问题增添有力的工具,预期能够熟练运用 Python 完成复杂数据的处理、深入分析以及清晰直观的可视化呈现。通过不断的学习、实践和反思,我不仅掌握了实用的技能,更培养了对数据的敏锐洞察力和解决问题的能力。在未来的工作和学习中,我将继续运用所学,不断挖掘数据的价值,为决策提供有力支持。 阅读详情

相关推荐

H2O到OmniH2O细节解读,人形机器人遥操作的技术演进与哲学

摘要:CMU何泰然团队相继发表的H2O和OmniH2O论文为人形机器人遥操作领域带来突破。H2O首创Sim-to-Data方法,通过形态/动作重定向和特权筛选处理人类动作数据,PPO算法实现基础控制。OmniH2O改进为教师-学生蒸馏框架,采用DAgger算法增强泛化能力,并消除对线速度输入的依赖。这两项工作从概念验证到工程落地,建立了一套完整的动作学习范式,为具身智能研究提供了重要参考。

CyanNoah的博客 1393

chatgpt赋能python:用Python录入数据:提高工作效率的利器

本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程中用到的ai工具。

yakuchrisfor的博客 190

【Qt】Window环境下搭建Qt6、MSVC2022开发环境(无需提前安装Visual Studio)

本文介绍 Windows 环境下无需安装 Visual Studio,搭建 Qt6 与 MSVC2022 开发环境的方法,以节省磁盘空间。核心步骤包括:用中科大镜像提速 Qt6 在线安装,需勾选 Qt Creator 17.0.1、MSVC 2022 x64 等组件;配置环境变量,添加 mingw_64、msvc2022_64 及 Qt Creator 的二进制目录;安装 MSVC 2022 编译器与 Windows 10 SDK 并记录版本;配置 Qt Creator 构建套件,可选设置 vcvarsal

油炸自行车的博客 2940

Python数据分析学习收获与心得

Matplotlib是Python的一个数据可视化库,它提供了丰富的绘图功能,可以绘制线图、散点图、柱状图、饼图等。无论是金融、医疗、教育还是工业等行业,Python都可以发挥重要的作用,帮助机构更好地理解和分析数据,提高业务水平和效率。Scikit-learn是Python的一个机器学习库,它提供了丰富的机器学习算法和工具,包括分类、回归、聚类、降维等。Seaborn是基于Matplotlib的高级数据可视化工具,它提供了更多的绘图方法和更好的默认样式,可以快速生成高质量的图表。

s56548544898的博客 1万+

Dify工作流构建案例:迭代驱动的多维深度搜索

为了克服这些挑战,我们可以设计一个能够智能协同内部知识库与外部互联网搜索,并最终由大型语言模型(LLM)进行深度整合与精准回答的高级工作流。

同名公众号:dify实验室 2293

将机器人urdf模型转换为Mujoco环境下的mjcf模型

在使用gym环境进行人形模型站立训练的过程中,我想要将之前ros环境下的机器人urdf模型导入到mujoco环境下,这时候就需要将urdf模型转换为mujoco专用的mjcf模型。-AzureLoong.urdf是机器人模型(我这里使用青龙的模型);--custom_robot.xml是转换完成之后的机器人模型的名字和格式;包要求 Python 版本必须是 3.11 或更高),保证自己的其他训练环境和依赖不被干扰。首先将meshes文件迁移到需要输出的目录下,然后再运行转换命令。最后就可以成功输出了。

weixin_44334573的博客 3761

Python数据分析实战:从入门到精通

Python 在数据分析领域的应用前景广阔,从基础的数据处理到复杂的机器学习和大数据分析,Python 都能提供全面的解决方案。通过不断学习和实践,读者可以深入掌握 Python 数据分析技能,在数据驱动的时代中发挥更大的价值。希望本文能为您的 Python 数据分析学习之旅提供有益的帮助,开启数据分析的无限可能。

2401_89482907的博客 2402

永磁同步电机FOC控制实战:如何用线性死区补偿解决低速抖动问题(附Matlab仿真代码)

本文详细介绍了永磁同步电机FOC控制中线性死区补偿技术的工程实现方法,有效解决低速抖动问题。通过Matlab/Simulink仿真验证,该方案可将转矩脉动降低70%以上,显著提升系统稳定性。文章包含完整的数学模型构建、Simulink实现步骤及参数整定技巧,为工程师提供实用解决方案。

weixin_30872499的博客 155

【开源数据分析Python实战宝典】:掌握10大高效工具与技巧提升数据处理效率

掌握开源数据分析Python高效方法,解决数据处理慢、工具选择难问题。涵盖Pandas、NumPy等10大工具实战技巧,适用于金融、电商等领域,提升分析效率50%以上。方法实用、代码开源,值得收藏。

LiteTrans的博客 626

【QEMU系统分析之TPM篇(一)】

本文以 QEMU 8.2.2 为例,分析其 TPM-emulator 模块的实现,并为 QEMU 添加 Windows 平台的TPM 模拟器的支持。

David唐辉的博客 1191

经典脉冲激光测距原理&雷达方程

脉冲激光测距机的工作过程如下:首先用瞄准光学系统瞄准目标,然后接通激光电源,储能电容器充电,产生触发闪光灯的触发脉冲,闪光灯点亮,激光器受激辐射,从输出反射镜发射出一个前沿陡峭、峰值功率高的激光脉冲,通过发射光学系统压缩光束发射角后射向目标。通过计算激光发射功率经介质传输的衰减,目标表面截获和反射的光功率,到达接收视场的光功率,以及接收光学系统接收到的光功率,就可以得到到达光电探测器的光功率,即接收功率。⑤光東路程上的折射率变化;),测量光脉冲到达目标并由目标返回到接收机的时间,由此计算出目标的距离。

weixin_46153372的博客 2529

Python数据分析四剑客:IPython、Numpy、pandas、Matplotlib

Python作为一门优秀的编程语言,近年来受到很多编程爱好者的青睐。一是因为Python本身具有简捷优美、易学易用的特点;二是由于互联网的飞速发展,我们正迎来大数据的时代,而Python无论是在数据的采集与处理方面,还是在数据分析与可视化方面都有独特的优势。我们可以利用Python便捷地开展与数据相关的项目,以很低的学习成本快速完成项目的研究。Python被大量应用在数据挖掘和机器学习领域,其中使...

博文视点(北京)官方博客 2326

rk3568 rk628桥片 rgb2hdmi

RK628 是瑞芯微全新推出的视频桥接芯片,支持丰富的显示接口,支持高分辨率大屏产品转换需求。基于DRM、FB的显示框架易于使用。 输入信号支持:HDMI、RGB、BT.1120,输出信号支持 HDMI、GVI、Dual LVDS、Dual MIPI、MIPI-CSI、RGB、BT.1120,最高支持4K 60fps 输入/输出转换,并且支持输入到输出 1/4~4倍的缩放。

weixin_35723192的博客 452

Python数据分析实战:从零构建NumPy与Pandas核心技能栈

数据分析是现代数据驱动决策的核心环节,其本质是从原始数据中提取有价值信息的过程。其技术原理依赖于高效的数据处理工具链,其中Python凭借其丰富的库生态成为主流选择。NumPy提供了高性能的数值计算基础,通过向量化操作大幅提升处理效率,而Pandas则构建于此之上,提供了DataFrame这一强大的结构化数据容器,使得数据清洗、转换和分析变得直观高效。掌握这两大工具,对于从事数据科学、商业分析或任何需要处理数据的工程实践都极具价值。本文聚焦于解决学习路径脱节的痛点,通过一个完整的实战项目,串联起Python

weixin_33694620的博客 452

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

python数据分析记录

Numpy Python没有提供数组,列表(List)可以完成数组,但不是真正的数据,当数据量增大时,,它的速度很慢。所以Numpy扩展包提供了数组支持,同时很多高级扩展包依赖它。例如:Scipy、Matplotlib、Pandas。 官方文档 Scipy 该包提供矩阵支持,以及矩阵相关的数值计算模块。如果说Numpy让Python有了Matlab的味道,那么Scipy就让Python真正地成为二半个Matlib。因为涉及到矩阵内容,而课程中主要使用数组,所以不再介绍。 官方文档 Pandas ..

jsd2root的博客 276

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Python 数据处理:NumPy库的使用

Python 数据处理:NumPy库。简介。ndarray,创建,数据类型,运算,索引,切片,切片索引,布尔型索引,花式索引,转置与轴对换。通用函数,指定输出,聚合,外积。数据处理,将条件逻辑表述为数组运算,数学和统计方法,用于布尔型数组的方法,排序,唯一化与集合逻辑。文件输入输出。线性代数。伪随机数生成。数组重塑,C和Fortran顺序,数组的拆分与合并,元素的重复:tile、repeat。广播,广播规则,通过广播设置数组的值。.........

小嗷犬的博客 1831

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

【数据分析】Python数据分析及环境搭建:教程详解1(第23天)

本教程详解了Python做数据分析的优势,Python数据分析常用开源库,如何启动jupyter notebook,如何使用jupyter notebook。

syhiiu的博客 1404

python数据分析模块

python可以做数据分析,主要包括numpy,scipy,pandas,matplotlib,scikit-learn等等诸多强大的模块,在结合上ipython交互工具 ,以及python强大的爬虫数据获取能力,字符串处理能力 NumPy(Numerical Python的简称)是高性能科学计算和数据分析的基础包。NumPy最重要的一个特点就是其N维数组对象(即ndarray),该对象是一个快速而灵活的大数据集容器。可以利用这种数组对整块数据执行一些数学运算,比python自带的数组以及元组效率更高,其语

weixin_43956958的博客 2476

numpy知识点(与python比较)

np.sum(axis=1,keepdims = True) 保持原有维度,不然就会默认得到秩为一的数组(即去掉维度为1的那个维度了) assert(a.shape == (1,2)) 正确则跳过,错误则输出assert error 使用 a.tolist() 将array转化为list,如果只有一个元素(且只有一个维度)则转化为一个标量 np.squeeze()可以将array中维度为1的维度去...

qq_33095515的博客 769

Python数据分析库比较-选择适合你的数据分析库的常用技巧

每个库都有其独特的优势和适用场景。Pandas擅长数据清洗和转换,NumPy是数值计算的基石,SciPy提供了强大的科学计算功能,而Matplotlib和Seaborn则让你能够将数据以直观的方式呈现出来。想象一下,如果你是一位厨师,那么Python就是你手中的厨具,而各种数据分析库则是你的食材和调料。你可以把这里当作自己的家,无论是工作之余的小憩,还是寻找灵感的驿站,我都希望你能在这里找到属于你的那份快乐和满足。

master_chenchen的博客 1206

Python数据分析常用模块介绍

前言 python是一门优秀的编程语言,而是python成为数据分析软件的是因为python强大的扩展模块。也就是这些python的扩展包让python可以做数据分析,主要包括numpy,scipy,pandas,matplotlib,scikit-learn等等诸多强大的模块,在结合上ipython交互工具 ,以及python强大的爬虫数据获取能力,字符串处理能力,让python成为完整的数据分析工具。 点击加群即可免费获取Python学习资料 资料就放在群文件里等你来拿 numpy.

Python案例分享,B站视频教程:https://space.bilibili.com/523606542 1874

这样学 2 天搞定 NumPy !

Python与算法社区已原创430篇,干货满满值得星标010203三步加星标NumPy系列已推送以下三篇:图解入门 NumPy,来了!介绍 NumPy 的五种玩法NumPy 100 道练...

算法channel 173

数据分析-numpy总结笔记

一、简介 1.Numpy介绍 NumPy (Numerical Python)是一个开源的Python科学计算库,于快速处理任意维度的数组。 NumPy支持常见的数组和矩阵操作。对于同样的数值计算任务,使用Numpy比直接使用Python要简洁的多。 NumPy使用ndarray对象来处理多维数组,该对象是-一个快速而灵活的大数据容器。 2.Numpy的优点 ●对于同样的数值计算任务,使用NumPy要比直接编写Python代码便捷得多 ; ●NumPy中的数组的存储效率和输入输出性能均远远优于Python.

驱逐舰 897

【NumPy】全面解析NumPy的sort函数:高效排序算法与应用技巧

全面解析NumPy的sort函数:高效排序算法与应用技巧

科技改变人类,技术成就未来 1733
上一篇: 「Python」数据分析师需要掌握到什么程度?4条告诉你
下一篇: Python数据分析实战基础 | 初识Pandas
壹只小小码农
博客等级 码龄5年 8104粉丝 1333原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值