gpt4 book ai didi

matlab - 在MATLAB中对表格的内容进行排序

转载 作者:行者123 更新时间:2023-12-04 10:53:36 29 4
gpt4 key购买 nike

我在 MATLAB 中创建了以下表格。

Tleft = table(['1'; '2'; "Node9"; "Node10"; ],...
["Node9"; "Node10"; '2'; '3';],...
'VariableNames', {'h', 't'})
Tright = table(['1'; '2'; "Node9"; "Node10"; ],...
["Node9"; "Node10"; '2'; '3';],...
[1;2;3;3],...
'VariableNames', {'h', 't','value'})

我正在尝试对 Tright 的行进行排序按 Tleft 中的行顺序排列.
T = innerjoin(Tleft,Tright)

预期结果:
T =

4×3 table

h t value
________ ________ _____

"1" "Node9" 1
"2" "Node10" 2
"Node9" "2" 3
"Node10" "3" 3

得到的结果:
T =


4×3 table

h t value
________ ________ _____

"1" "Node9" 1
"2" "Node10" 2
"Node10" "3" 3
"Node9" "2" 3

关于如何获得预期结果的任何建议?

最佳答案

得到的结果是由innerjoin排序引起的.您可以做的一件事就是垫每个 "Node9"创建表时使用 0(即 "Node09" )。

如果这不是一个选项,您可以考虑使用 sort_nat (或来自文件交换的任何其他类似排序方法)和排序 T喜欢:

[~, index] = sort_nat(T.h);
T(index,:);

关于matlab - 在MATLAB中对表格的内容进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59340880/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com