numpy模块的基本操作

NumPy是Python的科学计算基础库,提供了多维数组操作和丰富的数学函数。内容包括创建和设置数据类型的数组、读取CSV文件、数组转置、索引切片、数值修改、数组拼接、行列交换、深浅拷贝、处理NaN和Inf,以及统计函数。通过案例分析了使用NumPy进行身高、体重平均值计算和股价统计分析。
摘要由CSDN通过智能技术生成

NUMPY模块

NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。即快速, 方便的科学计算基础库(主要时数值的计算, 多维数组的运算);
数组:存储的时同一种数据类型;
****主要适用于对数字类型进行运用

创建数组以及设置数组的数据类型
import numpy as np
# 1. numpy中如何创建数组(矩阵)?
# 方法1:
a=np.array([1,2,3,4])
b=np.array([2,3,4,6])
print(a+b)
#这个时候数组的相加为对应元素相加

#方法2:
c1 = np.arange(1,6)
print(c1)

# 数组的类名: numpy.ndarray
print(type(c1))

# 查看数据元素的类型
print(c1.dtype)

# 2. 修改数组的数据类型
print(c1.astype('float'))
print(c1.astype('bool'))
print(c1.astype('?'))  # ?是bool类型的代号;

# 创建的时候指定数据类型
print(np.array([1,2,3,4], dtype=np.float))

# 3. 修改浮点数的小数位数
c3 = np.array([1.234556, 3.45464456, 5.645657567])
print(np.round(c3, 2))

在这里插入图片描述

numpy读取csv文件(逗号分隔符文件)
import numpy as np
fname='doc/student.txt'
dtype=np.dtype([('gender', '|S1'), ('height', 'f2')])
# fname: 文件的名称, 可以是文件名, 也可以是ugz或者bz2的压缩文件;
# dtype: 数据类型, 可选, 默认是float;
# delimiter: 分隔符字符串, 默认情况是任何的空格,
# skiprows: 跳过前xx行, 一般情况跳过第一行;
#  usecols: 读取指定的列, 可以是元组;
# unpack: 如果为True, 对返回的数组对象转置;
date=np.loadtxt(fname=fname,dtype=dtype,skiprows=9,usecols=(1,3),unpack=True)
print(date)

在这里插入图片描述

numpy数组的转置
import numpy as np

# 将一维数组转换为3行4列的二维数组
data = np.arange(12).reshape((3, 4))
print('data\n',data)

#进行行列转置
#1.)直接转换
print('data转换1:\n',data.transpose())

# 2). 0轴 , 1 轴
# - 轴的理解(axis): 0轴, 1轴, 2轴
# - 一维数组: [1,2,3,45]    ----0轴
# - 二维数组: [[1,2,3,45], [1,2,3,45]]     ----0轴, 1轴,
print('data转换2:\n',data.swapaxes(1, 0))

#3).numpy内置方法
print('data转换3:\n',data.T)

在这里插入图片描述

numpy的索引和切片
import numpy as np

# 将一维数组转换为3行4列的二维数组
data = np.arange(12).reshape((3, 4))
print(data)

# 取第一行的数据
print('第一行的数据\n',data[0])

#  取第一列的数据
print('第一列的数据\n',data.T[0])
print('第二列的数据\n',data[:, 1])

# 获取多行
print('前两行\n',data[:2])

# 获取多行列
print('每行前两列\n',data.T[:2])
print('每行前两列\n',data[:, :2])


# 获取指定行的前几列;

print('指定1,3行的前2列\n',data[[0,2], :2])
print('指定前两行的1,3列\n',data[:2, [0,2]])
  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值