可以重命名列在一个表吗?

2408(30天)
切尔西
切尔西 2015年2月18日
回答: 剪秋罗属植物龙 2021年10月20日
你好,
我希望有一个简单的方法来重命名表中的列。我不需要任何复杂,我想重命名,例如,第二,7日和16日的列一个表,里面一个函数。
谢谢!
2的评论
每•艾萨克森
每•艾萨克森 2021年9月8日
“我不要例子!我需要解决我的情况. .很简单……这是无用的这个页面,对不起……”
不它不是简单的理解你在这个词什么意思 解决方案
OP已经接受了一个答案,因此我相信OP发现至少稍微有用。

登录置评。

接受的答案

每•艾萨克森
每•艾萨克森 2015年2月18日
是的! 医生说:
例子
% %创建一个表
([T =表“米”;“米”;“F”;“F”;“F”]、[38,43岁,38;40;49),
(71;69;64;67;64],[176;163;131;133;119))
T =
Var1Var2Var3Var4
________________
3871年176年
4369年163年
F3864年131年
F4067年133年
F4964年119年
% %修改变量名称
T.Properties。VariableNames = {“性别”的“年龄”“高度”“重量”}
T =
性别年龄高度重量
_____________________
3871年176年
4369年163年
F3864年131年
F4067年133年
F4964年119年
6个评论
每•艾萨克森
每•艾萨克森 2018年12月2日
@Silver,这是一个新的问题,而不是一个评论。发布它增加了机会得到一个答案。
有很多重复的行。显然,不允许重复(尽管这不是明确的文档(?))。然而,“Temperature_Optode”不是一个复制。

登录置评。

更多的答案(6)

彼得·珀金斯
彼得·珀金斯 2015年2月19日
以下也是可行的:
重命名只有一些变量(注意括号左边和右边字符串单元阵列)……
> > T.Properties。VariableNames ([1 3]) = {“性别”的“高度”}
T =
性别Var2高度Var4
____________________
3871年176年
4369年163年
F3864年131年
F4067年133年
F4964年119年
…或重命名只有一个变量(注意在lh代替括号,括号和原始字符串RHS)……
> > T.Properties.VariableNames {2} =“年龄”
T =
性别年龄高度Var4
___________________
3871年176年
4369年163年
F3864年131年
F4067年133年
F4964年119年
…或重命名一个变量,当你只知道它(旧)的名字。
> > T.Properties.VariableNames {“Var4”}=“重量”
T =
性别年龄高度重量
_____________________
3871年176年
4369年163年
F3864年131年
F4067年133年
F4964年119年
2的评论
Cbhihe
Cbhihe 2017年6月22日
实际上你是重命名变量,而不是列(头)要求相机会有办法重命名标题,而不是实际的变量名称?

登录置评。


奥列格•科马罗夫
奥列格•科马罗夫 2015年4月22日
我的 tableutils () renameVarNames () 这恰恰与添加的灵活性。
描述通常是在https://github.com/okomarov/tableutils上更新

马丁Patz
马丁Patz 2017年7月21日
我同意 Cbhihe的 上面的评论,提出的解决方案并不直接回答OP的问题。万博 尤文图斯我面临一个之间的分化情况 列标题 变量 确实是重要的。例如
v1 = [1:3] ';
v2 = [2:4] ';
m = (v1、v2);
t1 =表(v1、v2)
t2 =表(米)
提供两种不同的结果:
t1 =
v1v2
____
1 2
2 3
3 4
t2 =
______
1 2
2 3
3 4
与之前公布的答案不可能重命名的列 t2 通过指定 VariableNames, {‘column_1’,‘column_2} 作为附加参数表命令。但你可以将一个矩阵分解成单独的列,然后configureable,使用 array2table 命令。
例子:
t3 = array2table (m,“VariableNames”,{“column_1”,“column_2”})
column_1column_2
________________
1 2
2 3
3 4
2的评论
彼得·珀金斯
彼得·珀金斯 2017年7月21日
这是非常原因我们试图将垂直在一个表称为“变量”,而不是“列”。
马丁,在你的例子是一个Nx2翻倍。双数组没有办法“名称”列,你是正确的,只是把一个Nx2双到表中不添加该功能。你可能做的两件事之一:
1)就像你说的,很容易把Nx2分割成两个资料片列向量。但据推测,有一些原因你想要m作为Nx2而不是分裂。
2)你可以与两个变量m本身一个表,表中。这将是毫无意义的,如果外部表只有米为一个变量,但是在这种情况下你从哪里有包含多个变量的表,其中有多个列,它可能是有用的。目前,“表一表”的显示不是很有用,但是所有的加下标等等是你期望。另一方面,一个表不是一倍,因此,尽管这种策略可以让这两个列“一起”在某种意义上,你可能想要使用m的两倍。

登录置评。


剪秋罗属植物龙
剪秋罗属植物龙 2021年10月20日
重命名表和时间表变量R2020a以来已经成为简单的:
丽娜mevars 重命名表中的变量或时间表
也检查套方便功能表/时间表操作
addvars 将变量添加到表或时间表
removevars 从表或删除变量的时间表
mergevars 结合表或时间表变量到多列变量
movevars 移动变量在表或时间表
splitvars 分多列变量在表或时间表
convertvars 转换表或时间表变量来指定数据类型


Ruxandra加芙约内斯库
Ruxandra加芙约内斯库 2021年9月6日
我有矩阵B = [10 11 12 13 14;15 16 17 18 19;20 21日22日23日24日;25 26 27 28 29;30 31 32 33 34]。
  1. 我如何设置列的名称与ab,公元前,cd,德英孚吗?
  2. 我如何添加一个新的列“成品”值100 ?
  3. 我如何设置值从cd和线条1,2,3,NaN值?我不知道什么是南。
谢谢你!
2的评论
沃尔特·罗伯森
沃尔特·罗伯森 2021年9月8日
对我来说,听起来像作业
B = [10 11 12 13 14;15 16 17 18 19;20 21日22日23日24日;25 26 27 28 29;30 31 32 33 34)
B = 5×5
10 11 12 13 14 15 16 17 18 19 20 21日22日23日24日25日26日27 28 29 30 31 32 33 34
T = cell2table (num2cell (B),“VariableNames”,{“ab”,“公元前”,“cd”,“德”,“英孚”})
T =5×5表
ab 公元前 cd 英孚 __ __ __ __ __10 11 12 13 14 15 16 17 18 19 20 21日22日23日24日25日26日27 28 29 30 31 32 33 34
T.fg (1:5) = (T{3:})和T.ab (1)
T =5×6表
ab 公元前 cd 英孚 成品 __ __ __ __ __ ___10 11 12 13 14 100 15 16 17 18 19 100 20 21 100年100年22日23日24日25日26日27日28 29 30 31 32 33 34 100
T.cd(1:3) =正-正无穷
T =5×6表
ab 公元前 cd 英孚 成品 __ __ ___ __ __ ___10 11南13 14 100 15 16南18 19 100 20 21日南23日24 100 100年25 26日27 28 29 30 31 32 33 34 100

登录置评。

标签

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!