python中numpy二维数组数据删除行和列

一、函数

np.delete(array,obj,axis)

二、函数的意思

array:需要处理的矩阵

obj:需要处理的位置,比如要删除的第一行或者第一行和第二行

axis:

如果输入为None:array会先按行展开,然后按照obj,删除第obj-1(从0开始)位置的数,返回一个行矩阵。

如果输入为0:按行删除

如果输入为1:按列删除

import numpy as np  

x=np.array[[1,2,3],[4,5,6],[7,8,9]]  #二维数组数据

axis=None

1、输入为None

a_1 = np.delete(a,2,None) #按行展开后,删除第2 +1个数,因为是从0开始的
删除后结果:[1,2,4,5,6,7,8,9]  #3被删除

删除行(axis=0):

  • 二维数组删除单行
x=np.delete(x,1,axis=0) #二维数组删除1+1行
删除后结果:x=[[1,2,3],[7,8,9]]
  • 二维数组删除多行
x=np.delete(x,[0,1],axis=0) #二维数组删除0+1、1+1行
删除后结果:x=[[7,8,9]]

删除列(axis=1)

  • 二维数组删除单列
x=np.delete(x,1,axis=1) #二维数组删除1+1列
删除后结果:x=[[1,3],[4,6],[7,9]]
  • 二维数组删除多列
x=np.delete(x,[0,1],axis=1) #二维数组删除0+1、1+1列
删除后结果:x=[[3],[6],[9]]

注意:np.delete()返回的结果的数据类型是‘numpy.ndarray’(数组),如果列表需要先删除行再删除列,需要将删除行后的数组转换成列表,例如:

    table_list = np.delete(table_list, 0, axis=0)
    table_list = list(table_list)
    table_list = np.delete(table_list, [1, 2], axis=1)

参考:numpy删除二维数据矩阵的行和列
np.delete详解

你可能感兴趣的:(python,python,numpy)