TransformColumns[tab,ncolf]
通过转换表格数据 tab 对每一行应用函数 f,添加一个名为 ncol 的新列.
TransformColumns[tab,{ncol1f1,ncol2f2,…}]
通过对每一行依次应用函数 fi 添加多个新列 ncoli.
TransformColumns[transfs]
表示可用于表格数据的 TransformColumns 的运算符形式.


TransformColumns
TransformColumns[tab,ncolf]
通过转换表格数据 tab 对每一行应用函数 f,添加一个名为 ncol 的新列.
TransformColumns[tab,{ncol1f1,ncol2f2,…}]
通过对每一行依次应用函数 fi 添加多个新列 ncoli.
TransformColumns[transfs]
表示可用于表格数据的 TransformColumns 的运算符形式.
更多信息和选项

- TransformColumns 通常用于添加新列或修改现有列,保留其余列.
- 表格数据 tab 的可能形式包括:
-
Tabular[…] 类型一致的表格数据 Dataset[…] 通用的分层数据 {assoc1,assoc2,…} 具有相同键的关联列表 matrix 数值矩阵 - 如果列 ncoli 已经存在,则用新创建的列替换它. 否则,在现有列后添加一个新列.
- TransformColumns[tab,{col,ncolf}] 在现有列 col 后添加一个名为 ncol 的新列,而不是直接追加到末尾.
- 对于没有列键的表格数据 atab,TransformColumns[atab,{f1,f2,…,fn}] 通过对各行连续应用函数 fi 追加 n 个匿名新列.
- 函数 fi 应用于输入表格数据 tab 的各个行,如果 tab 有列键,则该行是一个关联 <|col1val1,…|>;如果 tab 没有列键,则该行是一个列表{val1,…}.
- 当使用多个函数时,TransformColumns[tab,{…}] 实际上等价于 Fold[TransformColumns,tab,{…}],允许每个函数访问先前添加的列.
- 语法 colNothing 可用于删除名为 col 的现有列. »
- TransformColumns[transfs][tab] 等价于 TransformColumns[tab,transfs].

范例
打开所有单元 关闭所有单元基本范例 (3)
获取中美洲国家的人口和面积,以 Tabular 形式表示:
范围 (18)
转换 (7)
转换 Tabular 对象中的现有列:
拆分 Tabular 对象中的现有列:
如果列有名称,则 TransformColumns 与函数 f 将作为关联作用于整行:
在具有匿名列的 Tabular 对象上,行表示为列表:
使用 TransformColumns 的运算符形式:
使用 "a"Nothing 从结果中删除列 "a":
使用 Apply 函数时,每列都有一个参数:
输入数据 (3)
列操作 (4)
使用 ColumnwiseValue 从列值中减去该列的平均值:
使用 ColumnwiseThread 对整个列进行向量值变换:
使用 ColumnwiseValue,可以获得每行的相同列表:
取一个 Tabular 对象:
默认情况下,TransformColumns 按顺序对每一行进行操作:
TransformColumns 与 ColumnwiseValue[expr] 合用,首先计算 expr 一次,然后作用于每一行:
TransformColumns 与 ColumnwiseThread[expr] 合用,对 expr 计算一次,作用于整个列:
列的放置位置 (2)
缺少备用选项 (2)
转换 Tabular 对象时使用 MissingFallback 填充缺失值:
在转换 Tabular 对象时,使用 MissingFallback 中的列函数来填充缺失值:
应用 (4)
医疗数据 (1)
该数据包含有关肾移植患者在给定年龄进行移植后距死亡的时间(以天计)或在研究时间的信息:
使用 TransformColumns 为数值编码数据赋予意义:
现在,使用这些类别通过 PivotTable 来计算年平均生存时间:
气象数据 (1)
米德湖水位 (1)
树木数据 (1)
使用 TransformColumns 将列 "latitude" 和 "longitude" 合并为一列 GeoPosition 对象,并将其放置在列 "longitude" 之后:
属性和关系 (3)
TransformColumns 保持所有列不被转换:
ConstructColumns 仅保留列出的列:
TransformColumns 可用于删除列:
使用 DeleteColumns 是等效的:
取一个以年份和月份为列的 Tabular 对象:
TransformColumns 可以通过为每一行构建一个日期来添加新列:
或者,首先构建日期列,然后使用 InsertColumns 将其追加:
文本
Wolfram Research (2025),TransformColumns,Wolfram 语言函数,https://reference.wolfram.com/language/ref/TransformColumns.html.
CMS
Wolfram 语言. 2025. "TransformColumns." Wolfram 语言与系统参考资料中心. Wolfram Research. https://reference.wolfram.com/language/ref/TransformColumns.html.
APA
Wolfram 语言. (2025). TransformColumns. Wolfram 语言与系统参考资料中心. 追溯自 https://reference.wolfram.com/language/ref/TransformColumns.html 年
BibTeX
@misc{reference.wolfram_2025_transformcolumns, author="Wolfram Research", title="{TransformColumns}", year="2025", howpublished="\url{https://reference.wolfram.com/language/ref/TransformColumns.html}", note=[Accessed: 18-September-2025]}
BibLaTeX
@online{reference.wolfram_2025_transformcolumns, organization={Wolfram Research}, title={TransformColumns}, year={2025}, url={https://reference.wolfram.com/language/ref/TransformColumns.html}, note=[Accessed: 18-September-2025]}