Map 
更多信息和选项

- Map 使用标准的层次指定:
-
n 从第 1 层到第 n 层 Infinity 从第 1 层到 Infinity {n} 仅在第 n 层 {n1,n2} 从第 n1 层到第 n2 层 - 在 Map 中 levelspec 的默认值是 {1}.
- 正层的 n 由指标 n 指定的 expr 所有部分组成.
- 负层的-n 由带有深度 n 的 expr 所有部分组成.
- 层 –1 由不带子集的数值、符号和其它对象组成.
- 层 0 对应于整个表达式.
- 选项设置 Heads->True,Map 也作用于表达式的头部和其它部分.
- Map 通常高效地构建全新表达式然后进行计算.
- 如果 expr 是一个 Association 对象,Map[f,expr] 把 f 应用于相关性的数值中.
- 如果 expr 是一个 SparseArray 对象或结构化数组,Map[f,expr] 会将 f 应用于数值或 expr 中出现的子数组. »
- Map[f][expr] 等价于 Map[f,expr].
- Parallelize[Map[f,expr]] 或 ParallelMap[f,expr] 在所有子内核上并行计算 Map[f,expr]. »
范例
打开所有单元 关闭所有单元基本范例 (5)
把函数映射到 Association 的数值中:
范围 (11)
层次指定 (6)
表达式的类型 (5)
不论表达式的 head 为何种形式,都可使用 Map:
可将 Map 用于稀疏数组:
将 Map 与结构化数组一起使用,如 SymmetrizedArray:
通过 Map 将函数应用于类型为 QuantityArray 的结构化数组的元素:
映射于嵌套 Association 的第二层:
映射于 Association 的几个层级:
属性和关系 (9)
有几个自变量的函数可以用 MapThread 作用:
MapIndexed 将元素的指标传递到作用函数中:
属性为 Listable 的函数被自动映射:
ParallelMap 并行计算 Map:
Map 可被自动并行化,实际上相当于使用 ParallelMap:
Map 将一个表达式封装到另一个表达式的组成部分外面:
Comap 将部分表达式封装到另一个表达式外面:
Map 将一个函数映射到关联中的值上:
KeyMap 将一个函数映射到关联中的键上:
KeyValueMap 将一个函数映射到关联中的键和值上(并返回一个列表):
AssociationMap 将一个函数映射到关联中的规则:
Map[f,assoc] 等价于 AssociationThread[Keys[assoc]Map[f,Values[assoc]]]:
可能存在的问题 (1)
Map 缺省下从第 1 层开始,因此不能将函数应用到整个表达式上:
参见
Apply Scan MapAll MapAt MapIndexed MapApply MapThread SubsetMap AssociationMap KeyMap KeyValueMap ParallelMap Level Operate Comap Through Thread ImageApply
Function Repository: MapCases MapBatched JoinMap
技术笔记
历史
1988年引入 (1.0) | 在以下年份被更新:2003 (5.0) ▪ 2014 (10.0)
文本
Wolfram Research (1988),Map,Wolfram 语言函数,https://reference.wolfram.com/language/ref/Map.html (更新于 2014 年).
CMS
Wolfram 语言. 1988. "Map." Wolfram 语言与系统参考资料中心. Wolfram Research. 最新版本 2014. https://reference.wolfram.com/language/ref/Map.html.
APA
Wolfram 语言. (1988). Map. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/Map.html 年
BibTeX
@misc{reference.wolfram_2025_map, author="Wolfram Research", title="{Map}", year="2014", howpublished="\url{https://reference.wolfram.com/language/ref/Map.html}", note=[Accessed: 18-September-2025]}
BibLaTeX
@online{reference.wolfram_2025_map, organization={Wolfram Research}, title={Map}, year={2014}, url={https://reference.wolfram.com/language/ref/Map.html}, note=[Accessed: 18-September-2025]}