Python机器学习基础之Numpy

本文探讨了Python中数据结构的优化,从列表(List)过渡到数组(Array)以及进一步使用NumPy。列表允许存储不同类型的元素,但效率较低。数组则限制为单一类型,提高处理效率,而NumPy则专为矩阵和向量运算设计,提供高性能的数据处理能力。了解如何利用dtype查询数组类型,并通过示例展示了列表、数组和NumPy数组的创建。对于需要高效处理数值计算的场景,NumPy是更好的选择。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

看不到太远就把眼前做到最好,做眼前获利最大的事。

python的列表可以包含多种类型的数据,比如一个列表arr= 【‘2’,‘mane’,‘7.23’】 这使得它在处理效率上不太高。

如果我们只需要处理数据不需要处理别的,想高效一点呢?python提供了array(注意不再是List),也就是数组,它只能存储一种数据类型,最初赋值是啥类型就是啥类型的数组。

但是array不能处理矩阵,这对机器学习不好。

numpy包应运而生。

numpy是:只处理一种类型的可以进行向量或矩阵运算的包。

可以通过.dtpye来查询一个数组的类型。

例如:arr=【1,2,3】那arr.dtype='int64'

如果一个已经是整形的数组赋值“字符串”会报错,但是赋值浮点型就不会,python会自动进行一个类型转换。

#写一个列表
list1=[i for i in range(10)]
#结果:list1=[0,1,2,3,4,5,6,7,8,9]

#写一个数组
'''i 代表这个数组里是整数,python将会暂时分配2个字节给它'''
import array
arr1=array.array('i',[i for i in range(10)]) 
#结果:arr1=array('i', [0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

#写一个numpy数组
import numpy as np
nparr=np.array([i for i in range(10)])
#结果:nparr=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

总结:

list列表,里面可以是不同类型

array数组,里面只能是一种类型

numpy数组,里面只能是一种类型但是可以进行矩阵或向量运算。

附:所有数值类型的字符代码表:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

纸城

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值