首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何计算到线性列表的置换乘法“喜欢”表?

如何计算到线性列表的置换乘法“喜欢”表?
EN

Web Applications用户
提问于 2019-03-07 05:20:50
回答 1查看 261关注 0票数 0

我有一张这样的桌子。

如果我们像乘法表一样处理,我想把表转换成表的排列。列成这样的名单。

请注意,我用乘法表作为例子。我正在解析的实际数据是随机的。我选择使用乘法表数据的原因是查找方法,因为我的表数据是由同一方法执行的。例如,检查x-轴和y-轴上的两个不同输入的位置以及它们的收敛位置给出了值。

EN

回答 1

Web Applications用户

回答已采纳

发布于 2019-03-07 09:38:47

  • 您希望将上面图像的值转换为下面图像的值。

如果我的理解是正确的,并且您使用Google脚本,那么这个示例脚本如何?我认为对你的处境有几个解决办法。所以,请把这看作是其中之一。

  • 在这个示例脚本中,它假设初始值被放入活动表中的"A1:D4“单元格中。并将结果放到A6:C23细胞上。
  • 这个示例脚本的要点是,所有模式都是通过转换值来检索的。

示例脚本:

代码语言:javascript
运行
复制
var sheet = SpreadsheetApp.getActiveSheet();
var values = sheet.getRange("A1:D4").getValues(); // Retrieve the initial values

var ar = [];
for (var loop = 1; loop >= 0; loop--) {
  var temp = [];
  for (var i = 1; i < values.length; i++) {
    for (var j = 1; j < values[i].length; j++) {
      temp.push([values[0][j], values[i][0], values[i][j]]);
    }
  }
  ar[loop] = temp;
  values = values[0].map(function(_, i) {return values.map(function(f, j) {return f[i]})}); // Transpose the initial values.
}
var res = Array.prototype.concat.apply([], ar);

sheet.getRange("A6:C23").setValues(res); // Put the result

结果:

  • "A1:D4“是初始值。
  • "A6:C23“是结果值。

注:

  • 这是一个简单的示例脚本。所以请根据你的情况修改它。

如果我误解了你的问题,我道歉。

票数 2
EN
页面原文内容由Web Applications提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://webapps.stackexchange.com/questions/126088

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档