首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

70个NumPy练习:在Python下一举搞定机器学习矩阵运算

输入: 输出: 答案: 12.从一个数组中删除存在于另一个数组中的元素? 难度:2 问题:从数组a中删除在数组b中存在的所有元素。 输入: 输出: 答案: 13.获取两个数组元素匹配的索引号。...难度:3: 问题:选择没有nan值的iris_2d数组的行。 答案: 36.如何找到numpy数组的两列之间的相关性?...答案: 44.如何按列排序二维数组? 难度:2 问题:根据sepallength列对iris数据集进行排序。 答案: 45.如何在numpy数组中找到最频繁出现的值?...难度:3 问题:针对给定的二维numpy数组计算每行的min-max。 答案: 58.如何在numpy数组中找到重复的记录?...输入: 答案: 63.如何在一维数组中找到所有局部最大值(或峰值)? 难度:4 问题:在一维numpy数组a中查找所有峰值。峰值是两侧较小值包围的点。

20.7K42

挑战NumPy100关,全部搞定你就NumPy大师了 | 附答案

假设有一个(6,7,8)形状的三维数组,那么其中第100个元素的索引(x,y,z)是什么? 21. 使用tile函数创建棋盘格8x8矩阵 (★☆☆) 22....打印每个numpy标量类型的最小和最大可表示值 (★★☆) 48. 如何打印数组的所有值?(★★☆) 50. 如何在向量中找到最接近的值(给定标量)?(★★☆) 51....减去矩阵每行的均值 (★★☆) 59. 如何按第n列排序数组?(★★☆) 60. 如何判断一个二维数组里是否有空列? (★★☆) 61....创建一个具有name属性的数组类(★★☆) 64. 设有一个给定的向量,如何让每个能被第二个向量索引的元素加1(注意重复索引的情况)?(★★★) 65....请找出A的某些行, 该行内包含B的整行元素(不在意元素顺序). (★★★) 94. 设有一个10x3矩阵,请找出其中数值不完全相等的行 (e.g. [2,2,3]) (★★★) 95.

4.9K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Pandas基础知识

    取1之后每一行对应2之前每一列 bool索引 df[bool判断表达式] 如:df[(df['列索引名']>10) & (df['列索引名']列索引对应的值中10-20之间的元素...t.fillna(值) 将NaN填充为指定的值,常填充均值等,如t.fillna(t.mean()) 会将NaN对应列的均值进行填充 t['列索引名'] = t['列索引名'].fillna(t['列索引名...df1.merge(df2, on='a', how='outer') 外连接,a列包含的数据为df1和df2中a列元素的并集,每行元素分别对应,有则是原数据(一般a列的元素都有,因为操作列为a),没有则是...获取index df.index=['x', 'y'] 指定index df.reindex(list('abcdef')) 重新设置index,如果之前没有f行,则f行对应的数据为NaN df.set_index...('a', drop=False) 指定某一列作为index df.set_index('a').index.unique() 返回index的唯一值 df.swaplevel() 交换符合索引的顺序

    71210

    【数据结构】数组和字符串(八):稀疏矩阵的链接存储:十字链表的创建、插入元素、遍历打印(按行、按列、打印矩阵)、销毁

    节点包含了几个字段: LEFT:指向该节点在同一行中的左邻非零元素的地址信息。 UP:指向该节点在同一列中的上邻非零元素的地址信息。 ROW:存储该节点在矩阵中的行号。...COL:存储该节点在矩阵中的列号。 VAL:存储该节点的元素值。   每一行都有一个表头节点,它引导着该行的循环链表,循环链表中的每个节点按照列号的顺序排列。...对于行表头节点 BASEROW[i],其中 i 表示行号,范围从 1 到 m(矩阵的行数)。如果该行为空(即没有非零元素),则 COL(Loc(BASEROW[i])) 的值为 -1。...如果该列为空(即没有非零元素),则 ROW(Loc(BASECOL[j])) 的值为 -1。否则,ROW(Loc(BASECOL[j])) 的值为该列中最下边的非零元素的行号。...由于行和列都是循环链表,行表头节点 BASEROW[i] 中的 LEFT 指针循环地链接到该行最右边的非零元素,列表头节点 BASECOL[j] 中的 UP 指针循环地链接到该列最下边的非零元素。

    24210

    Python 数据分析(PYDA)第三版(二)

    在这种情况下,花式索引的行为与一些用户可能期望的有些不同(包括我自己),即通过选择矩阵的行和列的子集形成的矩形区域。...NumPy 结构化/记录数组 被视为“数组的字典”情况 Series 的字典 每个值都变成了一列;如果没有传递显式索引,则每个 Series 的索引被合并在一起以形成结果的行索引 字典的字典 每个内部字典都变成了一列...insert() 通过在索引i处插入元素来计算新的索引 is_monotonic 如果每个元素大于或等于前一个元素则返回True is_unique 如果索引没有重复值则返回True | unique...[row, col] 通过行和列标签选择单个标量值 df.iat[row, col] 通过行和列位置(整数)选择单个标量值 reindex方法 通过标签选择行或列 整数索引的陷阱 使用整数索引的 pandas...NaN 1 NaN NaN 带有填充值的算术方法 在不同索引对象之间的算术操作中,当一个对象中找到一个轴标签而另一个对象中没有时,您可能希望填充一个特殊值,比如 0。

    29400

    Pandas-DataFrame基础知识点总结

    DataFrame既有行索引,也有列索引,它可以看作是由Series组成的字典,不过这些Series公用一个索引。...1.5 2001 2.4 1.7 2002 2.9 3.6 我们可以用index,columns,values来访问DataFrame的行索引,列索引以及数据值,数据值返回的是一个二维的ndarray...该方法中几个重要的参数如下所示: 参数 描述 header 默认第一行为columns,如果指定header=None,则表明没有索引行,第一行就是数据 index_col 默认作为索引的为第一列,可以设为...index_col为-1,表明没有索引列 nrows 表明读取的行数 sep或delimiter 分隔符,read_csv默认是逗号,而read_table默认是制表符\t encoding 编码格式...2、DataFrame轴的概念 在DataFrame的处理中经常会遇到轴的概念,这里先给大家一个直观的印象,我们所说的axis=0即表示沿着每一列或行标签\索引值向下执行方法,axis=1即表示沿着每一行或者列标签模向执行对应的方法

    4.3K50

    一起来学演化计算-matlab基本函数min

    找到数组中最小的元素 语法 M = min(A) 返回A的最小元素 如果A是一个向量,那么min(A)返回A的最小元素 如果A是一个矩阵,那么min(A)是一个行向量,包含每一列的最小值 如果A是一个多维数组...M = min(A,[],dim) 返回沿dim维数的最小元素,例如,如果A是一个矩阵,那么min(A,[],2)是一个列向量,包含每一行的最小值。...因为第一维是列,第二维才是行,所以按照行来取最小值,则得到的是一个列向量 [M,I] = min( ___ )找到A的最小值的索引,并使用前面语法中的任何输入参数在输出向量I中返回它们。...如果最小值出现多次,那么min返回与第一次出现相对应的索引 C = min(A,B) 返回一个数组,其中最小的元素取自A或B。...A(:)的索引 现在,使用ind2sub函数来提取与最小元素对应的A的行和列索引 [I_row, I_col] = ind2sub(size(A),I) I_row = 1 I_col

    59650

    numpy与pandas

    ,它计算的是矩阵乘积,对于一维数组,它计算的是内积 f = np.random.random((2,4)) # 随机生成2行4列,值在0~1之间的矩阵np.sum(f) # 矩阵所有元素求和np.sum...a矩阵最小值索引,返回的均是一个数(如果a是二维数组,会将数据平铺成一维)np.argmax(a) # a矩阵最大值索引np.mean(a) # a矩阵所有元素平均值,还可以:a.mean()np.average...3x3矩阵np.nonezero(a) # 查看a矩阵中非0元素位置索引,第一个数组为行,第二个数组为列,一一对应np.sort(a) # a矩阵每行按由小到大的顺序排序np.transpose(a)...(a2[1][1]) # 输出第一行第一列的元素,也可以:print(a2[1,1])print(a2[1,:]) # 输出第一行所有元素print(a2[1,1:2]) # 输出第一行,第一、二列的所有元素...[df1,df4],axis=0,ignore_index=True) # concat默认对于列不同的合并,会用nan填充,ignore_index=True:如果两个表index没有实际含义,使用该参数会重新整理一个

    12110

    python3学习笔记

    >>> t [0, 0, 1, 0, 0] 但如果是二维数组,如t=[[0]*3]*4,则后面的*4其实是复制了一个数组对象,这样的话,每行的数组对象都是一个对象,所以改变其中一行的某列,会同时改变所有行的该列...array的“引用“值,所以改变x.ravel()也会改变x,但改变x.flatten()不会改变x shape函数 作用:返回矩阵的维度,shape[0]是行,shape[1]是列 Eg: >>>...**2 >>> c=array([1,2]) >>> c**2 array([1, 4]) ---- 矩阵array求和sum() a.sum(axis=1)是求矩阵a中每行的和,axis=0求每列的和...[3, 6]) ---- ptp() 函数计算数组中元素最大值与最小值的差(最大值 - 最小值) 0求每列,1求每行 >>> a array([[1, 1], [2, 4],...[3, 6]]) >>> a.ptp(0) array([2, 5]) ---- 合成矩阵hstack()和vstack() hstack()按列合成,vstack()按行合成 >>> a matrix

    76930

    Pandas必会的方法汇总,建议收藏!

    对象可以是列表\ndarray、字典以及DataFrame中的某一行或某一列 2 pd.DataFrame(data,columns = [ ],index = [ ]) 创建DataFrame。...连接另一个Index对象,产生新的Index对象 3 .insert(loc,e) 在loc位置增加一个元素 4 .delete(loc) 删除loc位置处的元素 5 .union(idx) 计算并集...9 .drop() 删除Series和DataFrame指定行或列索引。 10 .loc[行标签,列标签] 通过标签查询指定的数据,第一个值为行标签,第二值为列标签。...通过行和列标签选取单一值 举例:使用iloc按位置区域提取数据 df_inner.iloc[:3,:2] #冒号前后的数字不再是索引的标签名称,而是数据所在的位置,从0开始,前三行,前两列。...默认分隔符为制表符(t) 3 read_ fwf 读取定宽列格式数据(也就是说,没有分隔符) 4 read_clipboard 读取剪贴板中的数据,可以看做read_table的剪贴板版。

    4.8K40

    NumPy入门攻略:手把手带你玩转这款强大的数据分析和计算工具

    (matrix[:,1])语法代表选择所有的行,但是列的索引是1的数据。...print(matrix[:,0:2])代表的是选取所有的行,列的索引是0和1。 print(matrix[1:3,:])代表的是选取行的索引值1和2以及所有的列。...print(matrix[1:3,0:2])代表的是选取行的索引1和2以及列的索引是0和1的所有数据。 07 数组比较 NumPy强大的地方是数组或矩阵的比较,数据比较之后会产生boolean值。...10 NumPy的统计计算方法 NumPy内置很多计算方法。其中最重要的统计方法有: sum():计算数组元素的和;对于矩阵计算结果为一个一维数组,需要指定行或者列。...mean():计算数组元素的平均值;对于矩阵计算结果为一个一维数组,需要指定行或者列。 max():计算数组元素的最大值;对于矩阵计算结果为一个一维数组,需要指定行或者列。

    1.4K30

    基础知识篇(一)Pandas数据结构

    本文介绍pandas的基本数据类型,要熟练使用pandas,需要熟悉它的两种主要数据结构:Series和DataFrame 1.Series Series 形如于一维矩阵的对象,通常用来存储一列数值,其包含数值列...因为没有在生成Series的时候设置index列,所以pandas会创建由0到N-1的默认索引(N为数据长度) 此时可以分别values和index属性,如下: obj.values array([...:拥有多列,每列可以有不同类型的数据,拥有列名,行、列索引等......four Nevada five Nevada six Nevada Name: state, dtype: object # 3.取某一行的所有值,已知行标签的情况下 frame2...4.取某一行的所有值,已知第几行的情况下 frame2.iloc[4] year 2002 state Nevada pop 2.9 debt NaN

    85030

    【数据分析】数据缺失影响模型效果?是时候需要missingno工具包来帮你了!

    如果丢失的数据是由数据帧中的非NaN表示的,那么应该使用np.NaN将其转换为NaN,如下所示。...它可以通过调用: msno.bar(df) 在绘图的左侧,y轴比例从0.0到1.0,其中1.0表示100%的数据完整性。如果条小于此值,则表示该列中缺少值。 在绘图的右侧,用索引值测量比例。...其他列(如WELL、DEPTH_MD和GR)是完整的,并且具有最大的值数。 矩阵图 如果使用深度相关数据或时间序列数据,矩阵图是一个很好的工具。它为每一列提供颜色填充。...通过调用以下命令可以生成矩阵图: msno.matrix(df) 如结果图所示,DTS、DCAL和RSHA列显示了大量缺失数据。...当一行的每列中都有一个值时,该行将位于最右边的位置。当该行中缺少的值开始增加时,该行将向左移动。 热图 热图用于确定不同列之间的零度相关性。换言之,它可以用来标识每一列之间是否存在空值关系。

    4.8K30

    金融量化 - numpy 教程

    (两维时就是按行排列,这和R中按列是不同的): a = a.reshape(4,5) 构造更高维的也没问题: a = a.reshape(2,2,5) 既然a是array,我们还可以调用array的函数进一步查看...,如4*5的全零矩阵: d = (4, 5) numpy.zeros(d) 默认生成的类型是浮点型,可以通过指定类型改为整型: d = (4, 5) numpy.ones(d, dtype=int)...想计算全部元素的和、按行求和、按列求和怎么办?for循环吗?...不,NumPy的ndarray类已经做好函数了: 数组元素访问 数组和矩阵元素的访问可通过下标进行,以下均以二维数组(或矩阵)为例: 可以通过下标访问来修改数组元素的值: 现在问题来了,明明改的是a[...想要真正的复制一份a给b,可以使用copy 若对a重新赋值,即将a指到其他地址上,b仍在原来的地址上: 利用:可以访问到某一维的全部数据,例如取矩阵中的指定列: 数组操作 还是拿矩阵(或二维数组)作为例子

    1.2K40
    领券