Python NumPy学习笔记之数据处理

废话不多说,直接开干。

1. NumPy文件读写方法

1.1 保存文件

1.1.1 保存一个数组

# 二进制数据存储
# 保存一个数组
a = np.arange(10).reshape(2, 5)
b = np.arange(6).reshape(3, 2)
np.save("E://data analysis by python//a", a)

1.1.2 保存多个数组

# 保存多个数组
np.savez("E://data analysis by python//a_b", a, b)
print(a, '\n', b)

1.1.3 保存数组至文本文件中

# 保存数组至文本文件中
# fmt="%f"表示保存为浮点型,delimiter=","表示数据间分隔符为","
np.savetxt("E:/data analysis by python/a.txt", a, fmt="%f", delimiter=",")

1.2 读取文件

1.2.1 读取单个文件

# 二进制文件读取
# 读取单个文件
c = np.load("E://data analysis by python//a.npy")

1.2.2 读取多个文件

# 读取多个文件
d = np.load("E://data analysis by python//a_b.npz")
print(c, '\n', d['arr_0'], '\n', d['arr_1'])

1.2.3 读取文本文件

# 读取文本文件
a = np.loadtxt("E:/data analysis by python/a.txt", delimiter=",")
b = np.genfromtxt("E:/data analysis by python/a.txt", delimiter=",")
print(a, b)

2. 数据排序

2.1 sort函数排序

其中,请注意:

  1. seed为随机数种子,随机数种子固定,随机数不变;
  2. 请注意d,e,f返回值为None,因为sort排序是直接对数组操作;
  3. sort排序后,a,b,c不可逆,变成排序后的数组,d,e,f为中间变量。
# 数据排序
# seed为随机数种子,随机数种子固定,随机数不变
a = np.random.seed(10)
b = np.random.randint(1, 10, size=10)
c = np.random.randint(1, 10, size=(3, 3))
print(a, b, c)
# 直接排序
d = b.sort()
# 沿着横轴对每一行进行排序
e = c.sort(axis=1)
# 沿着纵轴对每一列进行排序
f = c.sort(axis=0)
print(a, b, c)
print(d, e, f)

2.2 argsort函数排序

# argsort函数排序,返回重新排序值下标
g = b.argsort()

3. # 数据去重与重复

3.1 数据去重

# 数据去重,b、c能达到相同结果
a = np.array(['赵', '钱', '孙', '李', '周', '赵', '钱'])
b = np.unique(a)
c = set(a)
print(a, b, c)

3.2 数组重复

# 重复数组两次
a = np.arange(5)
b = np.tile(a, 2)
# 重复数组元素两次
a = np.array([[1, 2, 3], [2, 1, 3], [1, 4, 3]])
# 按行进行元素重复
b = a.repeat(2, axis=0)
# 按列进行元素重复
c = a.repeat(2, axis=1)
print(a, b, c)

4. 常用函数

4.1 求和函数

a = np.array([[1, 2, 3], [2, 1, 3], [1, 4, 3]])
# 数组元素求和
b = np.sum(a)
# 沿横轴求和
c = a.sum(axis=1)
# 沿纵轴求和
d = a.sum(axis=0)
# 求元素累计和
m = np.cumsum(a)
# 求元素累计积
n = np.cumprod(a)

4.2 求均值函数

# 数组元素求均值
e = np.mean(a)
# 沿横轴求均值
f = a.mean(axis=1)
# 沿纵轴求均值
g = a.mean(axis=0)

4.3 求标准差、方差函数

# 求数组标准差
h = np.std(a)
# 求数组方差
i = np.var(a)

4.4 求最大、最小值函数

# 求数组最大值
j = np.max(a)
# 求数组最小值
k = np.min(a)
print(a,b,c,d,'\n')
print(e,f,g,'\n',h,j,k,m,n)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第5章 引用类型(返回首页) 本章内容 使用对象 创建并操作数组 理解基本的JavaScript类型 使用基本类型...
    大学一百阅读 3,272评论 0 4
  • 第3章 基本概念 3.1 语法 3.2 关键字和保留字 3.3 变量 3.4 数据类型 5种简单数据类型:Unde...
    RickCole阅读 5,163评论 0 21
  • 基础篇NumPy的主要对象是同种元素的多维数组。这是一个所有的元素都是一种类型、通过一个正整数元组索引的元素表格(...
    oyan99阅读 5,161评论 0 18
  • 总结了一些开发中常用的函数: usleep() //函数延迟代码执行若干微秒。 unpack() //函数从二进制...
    ADL2022阅读 477评论 0 3
  • PHP常用函数大全 usleep() 函数延迟代码执行若干微秒。 unpack() 函数从二进制字符串对数据进行解...
    上街买菜丶迷倒老太阅读 1,390评论 0 20