2.2.4 函数作用于表达式的部分项当有一系列元素时,经常需要将一个函数分别作用于每一项中,这可以用 Map 来实现. f作用于列表中的每一个元素
Out[1]= |  |
定义作用于一个列表中前两个元素上的函数 take2 用 Map 将 take2 作用于每一个列表上
Out[3]= |  |
将函数作用于列表中的每一个元素上 Map[ 的每一个元素和组成部分上. 将 f 作用于和式的每个元素
Out[4]= |  |
将 Sqrt 作用于 g 的每个变量
Out[5]= |  |
Map[f, expr] 将 f 作用于表达式 expr 第一层的项,用 MapAll[f, expr] 可 以将 f 作用于表达式 expr 的所有项.定义 2x2 矩阵 m
Out[6]= |  |
Map 将 f 作用于 m 的第一层,即矩阵的各行
Out[7]= |  |
MapAll 将f作用于 m 的所有元素上
Out[8]= |  |
可以通过指定的层方法用 Map 将函数作用于表达式的一些项上. 将 f 作用于 m 的第 2 层元素上
Out[9]= |  |
设定 Heads->True 可将f作 用于每一项的头部及其元素上
Out[10]= |  |
将函数作用于表达式不同部分的方法 通过指定层次可以使函数作用于表达式中某些项上,用 MapAt 可以通过列出元素标号 使函数作用于表达式中某些项上. 定义 2x3 矩阵 mm
Out[11]= |  |
将 f 作用第 1行第 2 个元素,第 2 行第 3 个元素上
Out[12]= |  |
给出 b 在 mm 中出现的位置
Out[13]= |  |
可以将 Position 得到的值代入 MapAt 中去
Out[14]= |  |
即使在仅有一个下标时也应该以列表的形式指定每一项
Out[15]= |  |
将函数作用于表达式中指定的项 定义表达式 t
Out[16]= |  |
给出 t 的完全形式 Out[17]//FullForm=
 |
MapAt 可用在任何表达式中
Out[18]= |  |
函数作用于表达式中的项和其标号上 f 作用于一个列表的每个元素 上,其第 2 个自变量给出元素的标号 f
Out[19]= |  |
作用于矩阵的所有层
Out[20]= |  |
Map 把一元函数作用于一个表达式中的项上,MapThread 将多元函数作用于 多个表达式的项上. 同时将函数作用于多个表达式 f 作用于相应的元素
Out[21]= |  |
MapThread 可对结构相同的任意长度的表达式进行操作
Out[22]= |  |
Map 等函数可以通过项的修改产生表达式,但有时不需要产生新的表达式 仅需要查看某些表达式,或者仅对表达式中的某些项进行运算. 计算表达式中各项的函数值 用 Map 将 f 作用于一个列表而产生新的列表
Out[23]= |  |
Scan 计算将函数作用于每一个元素的结果,但不产生新的表达式
Scan 从最低层开始访问表达式中的所有项
|