怎样学网站开发,北京住房投资建设中心网站首页,国外js特效网站,直播网站建设项目策划书转置#xff08;transpose#xff09;是重塑的一种特殊形式#xff0c;它返回的是源数据的视图#xff08;不会进行任何复制操作#xff09;。数组不仅有transpose方法#xff0c;还有一个特殊的T属性。In[70]:arrnp.arange(15).reshape((3,5))In[71]:arrOut[71]: array(…转置transpose是重塑的一种特殊形式它返回的是源数据的视图不会进行任何复制操作。数组不仅有transpose方法还有一个特殊的T属性。In[70]:arrnp.arange(15).reshape((3,5))In[71]:arrOut[71]: array([[ 0, 1, 2, 3, 4], [ 5, 6, 7, 8, 9], [10, 11, 12, 13, 14]])In[72]:arr.TOut[72]: array([[ 0, 5, 10], [ 1, 6, 11], [ 2, 7, 12], [ 3, 8, 13], [ 4, 9, 14]])在进行矩阵计算时经常需要用到该操作比如利用np.dot计算矩阵内积XTXIn[73]:arrnp.random.randn(6,3)In[74]:np.dot(arr.T,arr)Out[74]: array([[ 14.91087193, -7.57347777, -0.56395378], [ -7.57347777, 6.79559058, 3.99068128], [ -0.56395378, 3.99068128, 9.8351215 ]])对于高维数组transpose需要得到一个由轴编号组成的元组才能对这些轴进行转置比较费脑子In[75]:arrnp.arange(16).reshape((2,2,4))In[76]:arrOut[76]: array([[[ 0, 1, 2, 3], [ 4, 5, 6, 7]], [[ 8, 9, 10, 11], [12, 13, 14, 15]]])In[77]:arr.transpose((1,0,2))Out[77]: array([[[ 0, 1, 2, 3], [ 8, 9, 10, 11]], [[ 4, 5, 6, 7], [12, 13, 14, 15]]])简单的转置可以使用.T它其实就是进行轴对换而已。Ndarray还有一个swapaxes方法它需要接受一对轴编号。In[78]:arrOut[78]: array([[[ 0, 1, 2, 3], [ 4, 5, 6, 7]], [[ 8, 9, 10, 11], [12, 13, 14, 15]]])In[79]:arr.swapaxes(1,2)Out[80]: array([[[ 0, 4], [ 1, 5], [ 2, 6], [ 3, 7]], [[ 8, 12], [ 9, 13], [10, 14], [11, 15]]])swapaxes也是返回源数据的视图不会进行任何复制操作。亲如果笔记对您有帮助收藏的同时记得给点个赞、加个关注哦感谢」「诚邀关注“issnail”会有惊喜哦!」「文中代码均亲测过若有错误之处欢迎批评指正一起学习一起成长」参考书目利用python进行数据分析