numpy中的相关操作

一.认识numpy

1.什么是numpy

一个在Python中做科学计算的基础库,重在数值计算,也是大部分PYTHON科学计算库的基础库,多用于在大型、多维数组上执行数值运算

2.numpy创建数组(矩阵)   eg:Day03_mydata_01

np.array([,,])

arange(start,end,step)  #在numpy中相当于range的用法,但是arange只能用在numpy中,还需要进行导包

import numpy as np
import random

print("将列表转化为数组:")
t1=np.array([1,1,2,3])
print(t1)
print(type(t1))

t2=np.arange(0,10,2)
print(t2)
print(type(t2))
将列表转化为数组:
[1 1 2 3]
<class 'numpy.ndarray'>
[0 2 4 6 8]
<class 'numpy.ndarray'>

3.numpy的数据类型    eg:Day03_mydata_02

dtype()、type()与astype()   

np.round(数组,位数)可以将小数转换为需要的位数

type() 返回数据结构类型(list、dict、numpy.ndarray 等)
dtype()

返回数据元素的数据类型(int、float等)

备注:1)由于 list、dict 等可以包含不同的数据类型,因此不可调用dtype()函数

2)np.array 中要求所有元素属于同一数据类型,因此可调用dtype()函数

astype()

改变np.array中所有数据元素的数据类型。

备注:能用dtype() 才能用 astype()

import numpy as np
import random
print("显示元素的数据类型:")
t4=np.arange(0,10,2)
print(t4)
print(t4.dtype)   #显示元素的数据类型,此处要注意dtype的调用方式

print("通过dtype更改元素的数据类型-bool:")
t5=np.array([1,0,1,1,0,0,1],dtype="bool")
print(t5)
print(t5.dtype)

print("通过dtype更改元素的数据类型-float:")
t6=t5.astype("float")
print(t6)
print(t6.dtype)

print("numpy中的小数:")
t7=np.array([random.random() for i in range(10)])  #random函数会生成0-1之间的小数,后使用循环算法,循环10次,生成10个小数
#array只能将列表转换成数组,其他形式都不能进行转换
print(t7)
print(t7.dtype)

print("设置小数位数:")
t8=np.round(t7,2)   #此处调用np内部的方法round选择保存的小数位数
print(t8)
print(t8.dtype)
显示元素的数据类型:
[0 2 4 6 8]
int32
通过dtype更改元素的数据类型-bool:
[ True False  True  True False False  True]
bool
通过dtype更改元素的数据类型-float:
[1. 0. 1. 1. 0. 0. 1.]
float64
numpy中的小数:
[0.32849504 0.24031521 0.0226177  0.38362813 0.79525832 0.72865308
 0.13621076 0.04248764 0.89899634 0.41417803]
float64
设置小数位数:
[0.33 0.24 0.02 0.38 0.8  0.73 0.14 0.04 0.9  0.41]
float64

4.数组的形状

查看数组形状   eg:Day03_mydata_03

a.shape

修改数组形状      eg:Day03_mydata_03

a.reshape((行,列))    

import numpy as np
t1=np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12]])
print(t1)
print("查看数组的形状:",t1.shape)
print("改变数组的形状:",t1.reshape((2,6)))

此处reshape只在当前对数组进行形状的改变,而没有真正改变数组,调用reshape方法返回值即为新改变后的数组形状。若调用的方法没有返回值时,用新的变量接收则该变量为none值。

[[ 1  2  3  4]
 [ 5  6  7  8]
 [ 9 10 11 12]]
查看数组的形状: (3, 4)
改变数组的形状: [[ 1  2  3  4  5  6]
 [ 7  8  9 10 11 12]]

把数组转换成一维数组   eg:Day03_mydata_04

a.reshape(1,元素数量)

a.flatten()

import numpy as np
a=np.array(range(1,13))
b=a.reshape(3,4)
print("三行四列数组:",b)
c=b.reshape(1,12)      #此处12代表该元组有12个数字
print("通过reshape改变数组形状:",c)
c=b.flatten()
print("通过flatten函数改变数组形状:",c)
三行四列数组: [[ 1  2  3  4]
 [ 5  6  7  8]
 [ 9 10 11 12]]
通过reshape改变数组形状: [[ 1  2  3  4  5  6  7  8  9 10 11 12]]
通过flatten函数改变数组形状: [ 1  2  3  4  5  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值