对numpy.append()里的axis的用法详解

yipeiwu_com6年前Python基础

如下所示:

def append(arr, values, axis=None):
 """
 Append values to the end of an array.
 Parameters
 ----------
 arr : array_like
  Values are appended to a copy of this array.
 values : array_like
  These values are appended to a copy of `arr`. It must be of the
  correct shape (the same shape as `arr`, excluding `axis`). If
  `axis` is not specified, `values` can be any shape and will be
  flattened before use.
 axis : int, optional
  The axis along which `values` are appended. If `axis` is not
  given, both `arr` and `values` are flattened before use.
 Returns
 -------
 append : ndarray
  A copy of `arr` with `values` appended to `axis`. Note that
  `append` does not occur in-place: a new array is allocated and
  filled. If `axis` is None, `out` is a flattened array.

numpy.append(arr, values, axis=None):

简答来说,就是arr和values会重新组合成一个新的数组,做为返回值。而axis是一个可选的值

当axis无定义时,是横向加成,返回总是为一维数组!

 Examples
 --------
 >>> np.append([1, 2, 3], [[4, 5, 6], [7, 8, 9]])
 array([1, 2, 3, 4, 5, 6, 7, 8, 9])

当axis有定义的时候,分别为0和1的时候。(注意加载的时候,数组要设置好,行数或者列数要相同。不然会有error:all the input array dimensions except for the concatenation axis must match exactly)

当axis为0时,数组是加在下面(列数要相同):

import numpy as np
aa= np.zeros((1,8))
bb=np.ones((3,8))
c = np.append(aa,bb,axis = 0)
print(c)
[[ 0. 0. 0. 0. 0. 0. 0. 0.]
 [ 1. 1. 1. 1. 1. 1. 1. 1.]
 [ 1. 1. 1. 1. 1. 1. 1. 1.]
 [ 1. 1. 1. 1. 1. 1. 1. 1.]]

当axis为1时,数组是加在右边(行数要相同):

import numpy as np
aa= np.zeros((3,8))
bb=np.ones((3,1))
c = np.append(aa,bb,axis = 1)
print(c)
[[ 0. 0. 0. 0. 0. 0. 0. 0. 1.]
 [ 0. 0. 0. 0. 0. 0. 0. 0. 1.]
 [ 0. 0. 0. 0. 0. 0. 0. 0. 1.]]

以上这篇对numpy.append()里的axis的用法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python 解决flask 图片在线浏览或者直接下载的问题

目前是把图片存在mongodb数据库,实现一个方法,比如 访问 /get_pic/ID 能实现图片在浏览器打开,添加了一个状态,比如?filename=1.png,实现图片直接下载, 需...

Python实现微信自动好友验证,自动回复,发送群聊链接方法

Python实现微信自动好友验证,自动回复,发送群聊链接方法

引言: 一开始二维码加群,但是呢,这个东西隔一段时间会过期,我需要 每隔一段时间去更新二维码,然后当群人数超过100人了,只能邀请进群, 这个时候就需要别人添加我为好友,然后我通过,打开...

详解Python中的文本处理

字符串 -- 不可改变的序列 如同大多数高级编程语言一样,变长字符串是 Python 中的基本类型。Python 在“后台”分配内存以保存字符串(或其它值),程序员不必为此操心。Pyth...

Cpy和Python的效率对比

Python 语言的初学者, 特别是"惊奇者"(也就是那种第一眼就被毫无意义的某些特性吸引, 之后持续说服自己的人)认为 Python 不需要 C 语言的 for 语句, 因为他们能用优...

Python的MongoDB模块PyMongo操作方法集锦

开始之前当然要导入模块啦: >>> import pymongo 下一步,必须本地mongodb服务器的安装和启动已经完成,才能继续下去。 建立于MongoCl...