Python - Numpy 学习笔记

 

复制代码
#python - Numpy learning

import numpy as np
#---Numpy学习笔记---(第四章)---
#切片,浅拷贝
a = np.arange(10)
print(a)
b= a[2:7]
print(b)
a[5] = 1000
print(a)
print(b)#切片返回的是原数组对象的试图。共享底层的数据。
##########
print("part 2")
index = np.array([0,1,9])
print(index)

a= np.arange(10,0,-1)
print (a)
print(a[[0,1,-2]])


#返回原数组对象副本
a = np.array([1,3,5,7])
print (a)
b= a[:2]
print(b)
b= a[[0,1]]
print(b)
a[0] = 1000
print(a)
print(b)
#布尔型数组进行索引print
print("布尔型数组进行索引")
a = np.array([5,12,40,-43])
print(a)
b= np.array([True,False,False,True])
print(a[b])
print(a>0)
print(a[a>0])
#数组扁平化
print("数组扁平化")
a= np.arange(16).reshape((4,4))
b= a.ravel() #视图,共享底层元素
c = a.flatten()#副本,不互相受影响
a[0][0] = 99
print(b)
print(c)
f =c.reshape((2,8),order = "C") #C-行优先
print(f)

f= c.reshape((2,8),order = "F")#f-列优先
print(f)

#concatenate 连接数组函数
print("连接函数")
a = np.arange(6).reshape((2,3))
print(a)
b = np.arange(6,12).reshape((2,3))
print(b)
print(np.concatenate((a,b),axis = 0))
print(np.concatenate((a,b),axis = 1))

#dot
a= np.array([1,2,3])
b= np.array([4,5,6])
print(np.dot(a,b))# 对位相乘,再相加
#矩阵的点积运算
a = np.array([[1,2],[3,4]])
b = np.array([[1,0],[1,0]])
print(np.dot(a,b)) #需要查一下点积的计算方式
#transpose
print("TRANSPOSE 转置")
a = np.arange(6).reshape(2,3)
print(a)
print(a.transpose((1,0)))
print(a.T)
# sort
print("np.sort")
a = np.array([3,2,-1,4,4])
print(a)
print(np.sort(a))
print(a.sort()) #None
print(np.unique(a))#删除重复元素,并排序
#np.where = 简化版if-else的矢量化版本
print("----np.where----条件为True,返回第二个参数,否则返回第三个。----")
a = np.array([10,20,30,40])
b = np.array([20,30,10,40])
c = np.where(a>b,a,b) #条件为True,返回第二个参数,否则返回第三个。
d = np.where(a==b,a,(b-a)) #条件为True,返回第二个参数,否则返回第三个。
print(c)
print(d)
#transpose
复制代码

 

posted @   po-A  阅读(20)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~

Tushare大数据开放社区-免费提供各类金融数据和区块链数据 , 助力智能投资与创新型投资。

Python, Matlab, R, Web数据抽取学习交流。

点击右上角即可分享
微信分享提示