我怎么比较值的单元阵列值在另一个数组中,并将相应的列?
1视图(30天)
显示旧的评论
你好,
我有一个单元阵列
newdata
。每个单元格都包含两列。第一个包含秒,第一列包含值。
我有第二个数组
split_points_rounded
包含四个列。列包含值(秒),对应于截止点。在每一行
split_points_rounded
对应于一个细胞中
newdata
。
我想做的是遍历每个细胞
newdata
和将列根据截止点
split_points_rounded
。五个结果列表的值应该保存在一个新的单元阵列
split_newdata
。
比如,如果在第一行的值
split_points_rounded
将100年、200年、300年和400年的那列的第一个单元格
newdata
将产生5个列表。
1)第一个值的列的值100。
2)从100年价值价值200。
3)从200年价值价值300。
4)从300年价值价值400。
5)从价值400的最后一个值列。
我觉得这应该不是太困难但我有困扰的逻辑。我需要先编写一个脚本记录中的值的行吗
newdata
中的值相匹配
split_points_rounded
吗?
谢谢你的帮助!
0评论
接受的答案
沃斯
2022年12月10日
负载newdata
负载split_points_rounded
N =元素个数(newdata);
split_newdata =细胞(1,N);
为2 = 1:N
temp =重塑([newdata {2} {:}], [], 2);
idx =离散化(临时(:1),[0 split_points_rounded (ii):)正]);
split_newdata {2} = groupsummary(临时(:,2)、idx @ (x) {x});
结束
%检查结果:
split_newdata
split_newdata {:}