数据分析,numpy学习

使用NumPy和scikit-learn进行数据分析与机器学习 在处理大规模数据集和实现复杂的机器学习算法时,NumPy和scikit-learn成为了Python中最常用的工具库之一。在处理大规模数据集和实现复杂的机器学习算法时,NumPy和scikit-learn成为了Python中最常用的工具库之一。scikit-learn是一个开源的机器学习库,提供了各种常见的机器学习算法和工具,包括分类、回归、聚类、降维、模型选择和预处理等。scikit-learn是一个开源的机器学习库,提供了各种常见的机器学习算法和工具,包括分类、回归、聚类、降维、模型选择和预处理等。 阅读详情
import numpy as np
#
# #初始化数组
# arr = np.array([1,2,3])
# print(type(arr))
#
# arr1 = np.array([[1,2,3],[2,3,4]])
# print(arr1.shape)#打印维度
# print(arr1[0,0]) #访问二维第一个元素
#
# #构建全是0的2*3维度的数组
# a = np.zeros((2,3))
# print(a)
#
# #构建全是1的2*3维度的数组
# b = np.ones((2,3))
# print(b)
#
# #构建全是8的2*2*2维度的数组
# c = np.full((2,2,2),8)
# print(c)
#
# #对角线全是1的4*4维度数组
# d = np.eye(4)
# print(d)
#
# #数值随机的2*2*5维度数组
# e = np.random.random((2,2,5))
# print(e)
#
# #数值未被初始化的3*3*4维度的数
# f = np.empty((3,3,4))
# print(f)
# print(f.shape)
#
# #生成0-14的数组
# g =np.arange(15)
# print(g)
# print(g.shape)
#
# #指定数组数据类型
# h = np.array([1.7,2.7,3.7],dtype = np.float)
# print(h)
# print(h.dtype)
# #转换已有数组数据类型,如果原来是小数,转换为int时小数部分会被舍弃,无法转时会抛出异常
# int_h = h.astype(np.int64)
# print(int_h,int_h.dtype)
# #可以使用其他数组的数据类型作为参数
# j = np.array(['1','2','3'])
# j.astype(dtype=int_h.dtype)
# print(j)
#
# #切片方法与list相似,切片是引用,改变切片后的内容原数组也会改变
# k = np.array([[1,2,3],[4,5,6],[7,8,9]])
# l=k[:2,1:]
# # print(l)
# # l[0,0] = 11
# # print(l,k)
# #在第二维度切片,列
# i = k[:,0]
# print(i)
# #使用下标取不同位置的值
# # u = k[[0,0,1,2],[1,0,0,1]] #前面是数组下标,后面数数组内部下标
# # print(u)
# #由于内部是数组,可以构建数组去访问赋值
# k1 = np.array([1,0,0])
# k2 = k[np.arange(3),k1]
# print(k2)
#
# #使用条件判断
# k3 = (k>2)
# print(k3)
# print(k[k3])
# print(k[k>2])

#数学运算
x = np.array([[1,2],[3,4]],dtype=np.float64)
y = np.array([[5,6],[7,8]],dtype=np.float64)
#逐个求和
print(x+y)
print(np.add(x,y))
#逐个相减
print(x-y)
print(np.subtract(x,y))
#逐个相乘
print(x*y)
print(np.multiply(x,y))
#逐个相除
print(x/y)
#逐个求整除
print(x//y)
# 逐个取余
print(x%y)

# 求向量内积
print(np.dot(x,y))  #行向量*列向量
#矩阵转置  (矩阵行列互换)
x1 = np.array([[1,2,3],[4,5,6]])
print(x1.T)
#生成矩阵,使用数字填充
arr1 = np.arange(16).reshape(2,2,4)
print(arr1)
print(arr1.transpose((2,1,0))) #转置

# print(arr1.swapaxes(1,2)) #表示将1,2维度进行转换


#矩阵内部元素求和
print(np.sum(arr1))
print(arr1.sum())

#对某一维度求和
arr2 = np.array([[0,1,2],[4,5,6]])
print(np.sum(arr2,axis=1))

#对某一维度求和取平均值
print(np.mean(arr2,axis=0))
print(np.mean(arr2,axis=1))

#维度内部求和(累加的)
print(np.cumsum(arr2,axis=0))
print(np.cumsum(arr2,axis=1))

#维度内部求乘积(累加的)
print(np.cumprod(arr2,axis=0))
print(np.cumprod(arr2,axis=1))

#二维数组排序 在某一维度排序
arr3 = np.random.randn(5,3)*10
print(arr3)
arr3.sort(1)
print(arr3)

#broadcasting :当两个数组某个维度相等,可以进行加减乘除操作
x = np.array([[1,2,3],[4,5,6],[7,8,9]])
y = np.array([1,0,1])
print(x.shape)
print(y.shape)
print(x+y)

#逻辑运算
x = np.array([0,1,2,3,4,5])
y = np.array([6,7,8,9,10,11])
cond = ([True,False,True,False,False,True])
print(np.where(cond,x,y)) #当是True从第一个元素内找,当是Flase时从第二个元素找

x = np.random.randn(4,4)
print(x>0)
print(np.where(x>0,[1],[-1]))


# #使用reshape改变数组维度
# x = np.arange(8)
# print(x)
# x = x.reshape(4,2)
# print(x)
# #reshape参数可以使用其他数组的维度参数
# y = np.ones((2,4))
# print(y)
# x = x.reshape(y.shape)
# print(x)
# #改成一维的数组
# x = x.ravel()
# print(x)

#连接两个二维数组
arr1 = np.array([[1,2,3],[4,5,6]])
arr2 = np.array([[7,8,9],[10,11,12]])
print(np.concatenate([arr1,arr2],axis=0))
print(np.vstack((arr1,arr2)))

print(np.concatenate([arr1,arr2],axis=1))
print(np.hstack((arr1,arr2)))

#将数组截开
arr1 = np.random.randn(5,5)
# print(arr1)
#[1,3]代表的是a2,其他前面给a1,后面给a3
a1,a2,a3 = np.split(arr1,[1,3],axis=0)
print(a1,'\n\n',a2,'\n\n',a3)
a1,a2,a3 = np.split(arr1,[1,3],axis=1)
print(a1,'\n\n',a2,'\n\n',a3)

#堆叠辅助
arr1 =np.arange(6)
arr2 = arr1.reshape((3,2))
arr3 = np.random.randn(3,2)
print(np.r_[arr2,arr3])   #按行堆叠
print(np.c_[np.r_[arr2,arr3],arr1])  #按列堆叠

#切片直接转数组
print(np.c_[1:3,7:9])

#repeat重复
arr = np.arange(3)
print(arr.repeat(3)) #全重复3次
print(arr.repeat([2,3,5])) #第一个元素重复2次,第二个元素重复3次
#指定维度重复
arr = np.random.randn(2,3)
print(arr)
print(arr.repeat(2,axis=0))
print(arr.repeat(2,axis=1))

#整块重复tile
print(np.tile(arr,2))
print(np.tile(arr,(2,3)))


#numpy文件输入输出
#数组写入
arr = np.arange(50).reshape(2,5,5)
# print(arr)
#np.save('first_arr',arr)

#多个数组写入
arr1 = np.arange(30).reshape(3,5,2)
# np.savez('second_arr.npz',a=arr,b=arr1)

#数组读取
arr2 = np.load('first_arr.npy')
# print(arr2)
#多个数组读取
arch = np.load('second_arr.npz')
print(arch['b'])

#softmax 求概率分布
m = np.random.rand(10,10)*10 + 1000
print(m)
# print(np.exp(m))#指数爆炸,数值太大
#分子分母同时除以一个数,数值不变
m_row_max = m.max(axis=0)
m_new = np.exp(m-m_row_max.reshape(10,1))
m_row_sum = np.sum(m_new,axis=1).reshape(10,1)
m_last = m_new/m_row_sum
print(m_last)
print(np.sum(m_last,axis=1))


Python数据分析(Numpy和Pandas学习)入门思维导图,果断收藏 阅读详情

相关推荐

掌握NumPy基础:入门数据分析与机器学习的关键

本文详细介绍了NumPy库在数据分析和机器学习中的重要性及其使用方法。通过实例演示了如何生成NumPy数组,并解释了数组的数据类型和转换机制。同时,文章还深入探讨了NumPy数组的属性、向量计算、算术运算和逐元素运算等关键概念。

weixin_31749299的博客 406

用numpy和pandas进行数据分析

一、NUMPY 1.创建ndarray import numpy as np import numpy as np #导入numpy a1=np.array([1,2,10,4]) #利用列表构建一维数组, array里得是同一数据类型,可以是列表,元组,数组或其他序列 a2=np.array([[1,2,3,4],[4,15,6,17]])#利用列表构建二维数组,可以理解为矩阵 a3=np.zeros(10) / zeros_like a4=np.ones(5) / ones_like a5=np

张张的博客 2479

NumPy学习指南第二版:Python数据分析与科学计算

NumPy是一个开源的Python库,用于进行高效的数值计算。它支持多种维度的数组与矩阵运算,并提供了一系列数学函数库,广泛应用于科学计算领域。NumPy在机器学习和数据分析领域尤其重要,是这两个领域的基石之一。本章将引导读者理解NumPy的核心理念,包括其与Python原生数据结构的差异以及如何通过NumPy进行基本的数值运算。对于想要提升代码效率,进行科学计算的程序员来说,NumPy是必不可少的工具。

weixin_42097508的博客 759

python数据分析之numpy和pandas的操作

python常用网址:1.Python官网:https://www.python.org/2.各种库的whl离线安装包:http://www.lfd.uci.edu/~gohlke/pythonlibs/#scikit-learn3.数据分析常用库的离线安装包(pip+wheels)(百度云):http://pan.baidu.com/s/1dEMXbfN 密码:bbs2二、常用库1.NumPy ...

菜鸟可以飞的博客 3969

掌握NumPy:数据分析与机器学习的利器

本文深入探讨了NumPy库在矩阵计算和向量操作方面的强大功能。从基本的矩阵乘法、逆矩阵、转置矩阵到复杂的爱因斯坦求和约定和轴方向概念,再到利用NumPy进行高效的数组操作,文章详细解读了每个方法的使用场景和代码示例,帮助读者深入理解并有效运用NumPy进行数据分析和机器学习。

weixin_36238982的博客 466

NumPy和SciPy在数据分析和机器学习中的高效运用

本文探讨了NumPy和SciPy在数据处理中的应用,包括条件索引、修剪异常值、处理缺失值、性能比较以及如何选择合适的模型和学习算法。通过实际案例,展示了这些工具在数据预处理、绘图和预测中的便利性和高效性。

weixin_35414260的博客 382

python数据分析-NumPy学习

文章目录一、 初了解1. conda环境搭建2.pycharm中调用conda中的库 一、 初了解 1. conda环境搭建 Conda 是一个开源的软件包管理系统和环境管理系统,用于安装多个版本的软件包及其依赖关系,并在它们之间轻松切换。Conda 是为 Python 程序创建的,适用于 Linux,OS X 和Windows,也可以打包和分发其他软件 。最流行的 Python 环境管理工具。 conda官网上下载安装,安装过程不停下一步就行。打开conda,调用里面的jupyter功能。 可以实现在线编

da.的博客 1952

保姆级教程:用YOLOv8n模型在RKNN和Horizon平台完成目标检测(附C++部署代码与性能实测)

本文提供了一份详尽的YOLOv8n模型在RKNN和Horizon平台上的部署指南,涵盖环境配置、模型优化、跨平台适配及性能调优。通过实战案例和C++部署代码,帮助开发者在嵌入式设备上高效实现目标检测,显著提升推理性能。

weixin_42659194的博客 465

Python 商务数据分析—— NumPy 学习笔记Ⅰ

NumPy是高性能科学计算库,专为多维数组设计,采用C语言实现,运算速度远超Python列表。主要特性包括矢量运算、广播机制和丰富的数学函数库,广泛应用于数据分析、机器学习和科学计算领域。核心数据结构ndarray要求元素类型一致,支持高效向量化运算。创建数组方式多样,包括从列表/元组转换(np.array)、生成序列(np.arange)、随机数组(np.random)以及特殊函数(zeros/ones等)。数组支持多种数据类型(dtype)和维度操作(reshape/flatten),特别适合处理三维数

2302_79239614的博客 1193

基于smart_rtmp直播,最简单的部署手册

版本号 添加内容 修改时间 V1.0 新建 2021年12月30日 V1.1 增加网页播放 2021年12月31日 V1.2 增加是否可以多流和测试数据 2022年1月5日 目录 一、软件储备 1.推流软件:OBS 2.服务器流媒体软件:smart_rtmp 3.播放软件:Pot...

qq_28768477的博客 1万+

基于STM32与毫米波雷达的非接触式睡眠监测系统

物联网和嵌入式系统技术正在推动医疗健康设备的智能化发展。通过传感器网络采集生理信号,结合信号处理算法实现健康监测已成为主流技术方案。毫米波雷达凭借其非接触检测特性,在呼吸、心率等生命体征监测中展现出独特优势。STM32系列MCU凭借丰富外设和低功耗特性,成为医疗级嵌入式设备的首选平台。本系统整合60GHz毫米波雷达、红外测温与无线传输模块,构建了完整的睡眠质量评估解决方案,其硬件架构设计、信号处理算法和低功耗优化策略对可穿戴医疗设备开发具有参考价值。

weixin_36369848的博客 606

Python数据分析之numpy学习!

Python模块中的numpy,这是一个处理数组的强大模块,而该模块也是其他数据分析模块(如pandas和scipy)的核心。接下面将从这5个方面来介绍numpy模块的内容:1)数组的创建2)有关数组的属性和函数3)数组元素的获取–普通索引、切片、布尔索引和花式索引4)统计函数与线性代数运算5)随机数的生成numpy中使用array()函数创建数组,可以使用numpy中的arange()函数创建一维有序数组,它是内置函数range的扩展版。

2301_78217634的博客 1485

《Swin-Unet: 类Unet的纯Transformer架构用于医学图像分割》学习笔记

近年来,卷积神经网络(CNN)在医学图像分析领域取得了重要进展。尤其是基于U形架构和跳跃连接的深度神经网络广泛应用于各种医学图像任务。然而,尽管CNN表现优异,但由于卷积操作的局部性,其难以很好地学习全局和长距离语义信息的交互。在本文中,我们提出了Swin-Unet,一种用于医学图像分割的类Unet纯Transformer模型。被切分为Token的图像块输入到基于Transformer的U形编码器-解码器架构中,通过跳跃连接实现局部和全局语义特征的学习。

学无止境。 5540

NumPy库学习:数据分析Chapter1

数据分析学习笔记 1.基础概念和环境 1.1课程概要 概要{基础概念和环境matplotlib画图numpy处理数值型数组pandas处理字符串,列表,字典等其他的数据类型 概要\begin{cases} 基础概念和环境\\ matplotlib \quad\text{画图}\\ numpy \qquad\text{处理数值型数组}\\ pandas \qquad\text{处理字符串,列表,字典等其他的数据类型}\\ \end{cases} 概要⎩⎪⎪⎪⎨⎪⎪⎪⎧​基础概念和环境matplotlib画图n

weixin_45745854的博客 297

MoveIt避障规划实战:从点云到OctoMap的环境感知全流程

本文详细解析了MoveIt避障规划中从点云到OctoMap的环境感知全流程,重点介绍了深度相机选型、点云数据处理、OctoMap生成及避障规划参数调优等关键技术。通过实战案例展示了如何利用MoveIt和OctoMap实现机械臂在复杂环境中的高效避障,为工业自动化和服务机器人开发提供实用解决方案。

weixin_30417487的博客 564

手把手教你学PCIE(9.3)--pcie常见故障及原因:配置错误介绍

PCIe 设备的配置错误可能涉及操作系统设置、BIOS 设置、驱动程序设置和配置文件设置等多个方面。通过以上方法,可以有效地诊断和解决 PCIe 设备的配置错误。

MHD0815的博客 2425

python数据分析之numpy详细学习笔记

python数据分析之numpy详细学习笔记。这篇文章是自己学习数据分析的第三篇了,正好写完了“数据分析三剑客”,因为本身也是初学者,所以知识点较为基础,希望能对你有所帮助。

一名在读学生 2531

改进YOLOv9的CT图像肺结节检测与分类算法:从原理到实战

本文将详细介绍如何改进YOLOv9算法,使其更好地适应CT图像肺结节检测与分类任务。我们将从数据集准备、模型改进、训练优化到最终部署,完整呈现一个端到端的深度学习项目,并提供完整的代码实现。

YOLO 184

《Python数据分析与展示》-Numpy学习笔记01

此系列文章是作为学习嵩天老师的《Python数据分析与展示》的记录文章,以此来练习和巩固学习到的这个课程的内容。其中文章大部分内容都在摘取自嵩天老师的PPT的内容。如果你也对这个课程感兴趣的话,建议直接到中国MOOC上面搜索嵩天老师的这个课程来学习,嵩天老师的课程讲得很基础也很详细,并且嵩天老师的Python系列课程都是值得一听,值得一学。 第一章  numpy入门 import numpy...

nodoself的博客 1112

2024年11月架构设计师综合知识真题回顾,附参考答案、解析及所涉知识点(一)

软考高级考试包含三个科目:信息系统综合知识、系统架构设计案例分析和系统架构设计论文。考试形式为机考。本文主要回顾2024年下半年(2024-11-10)系统架构设计师考试上午综合知识科目的选择题,同时附带参考答案、解析和所涉知识点。由于机考时题目顺序是打乱的,本文题目所标序号只为区分不代表实际顺序。综合知识。

一几文的编程学习笔记。 9238

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

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

数据分析学习之numpy

NumPy 学习

wuliwavv的博客 2322

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

Python数据分析学习四 NumPy基础:数组和矢量计算

Python数据分析学习系列四 资料转自(GitHub地址):https://github.com/wesm/pydata-book 有需要的朋友可以自行去github下载 NumPy(Numerical Python的简称)是Python数值计算最重要的基础包。大多数提供科学计算的包都是用NumPy的数组作为构建基础。 NumPy的部分功能如下: ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。 用于对整组数据进行快速运算的标准数学函数(无需编写循环)。 用于读写磁盘数据

pidzhengding的博客 1541

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

《利用python进行数据分析》学习笔记一:Numpy模块(上)

Numpy基础:《利用python进行数据分析》学习笔记 **前言:**时隔两年,重新开始python的学习,之前的学习中断原因,自我总结下: 一是初入职场,确实有点不适应,一下班就想在床上躺尸,没有学校里的学习精力了; 二是当时的工作中还是没有使用python的场景,但现在的工作需要使用python和其他的一些软件进行分析,所以重新回来学习是必须的,也正好是一个契机,在工作两年的现在,确实需要重拾学习的能力; 三是python的内容现在纷繁复杂,虽然之前学习过VB、R,算是有了一定的基础,但是在学习pyt

datiegun的博客 341

python数据分析与机器学习之numpy操作

python数据分析与机器学习之numpy操作 numpy简介 机器学习三剑客想必大家都知道,分别是numpy、pandas和matplotlib了,numpy是对ndarray格式的数组进行操作的一个Python的库,同时也是机器学习的基础,在学习一些常用的深度学习框架之前,对于numpy的学习也是必不可少的,同时,numpy也是pandas的基础(对于pandas的结构留在pandas部分再介...

qq_43232436的博客 277

【学习笔记】python数据分析-Numpy

ndarray多维数组 通常来说,ndarry是一个通用的同构数据容器(即其中的所有元素都需要是相同的类型)。创建好一个ndarray数组时,同时会在内存中存储ndarray的shape和dtype。shape是ndarray维度大小的元组,dtype是解释说明ndarray数据类型的对象。 创建一个 ndarray 只需调用 NumPy 的 array 函数即可: import numpy as np data1= [[5, 2, 3, 4, 9], [5, 7, 9, 20, 18]] arr1= n

qq_39951637的博客 767

python数据分析与机器学习实战_Python数据分析与机器学习实战(Numpy)

工具包使用、算法建模、实战项目python常用库:numpy,pandas,matplotlib,scikit-learn,tensorflow机器学习需要:算法、数据、程序、评估、应用机器学习应用领域:计算机视觉、语音识别、自然语言处理、统计学习、数据挖掘、模式识别机器学习的常规套路:数据收集与预处理→特征选择与模型构建→评估与预测深度学习是机器学习中神经网络算法的延伸,只不过应用的比较广案例资...

weixin_39905500的博客 491
上一篇: linux登录远程服务器及scp命令传输文件(ssh(Connection refused lost connection) 错误),及centos7.3防火墙操作
下一篇: pandas学习
luslin
博客等级 码龄8年 25粉丝 35原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值