function - 在 Julia 中将命名元组向量的元素提取到矩阵中

标签 function for-loop julia

假设results是长度为 M 的元组向量哪里typeof(result) = Vector{NamedTuple{(:x, :p, :step), Tuple{Vector{Float64}, Float64, Int64}}} .

p也是长度为 N 的向量哪里typeof(results[1].p) = Vector{Float64} 。我想提取第一个N-1所有p的元素里面results并将其表示为M x (N-1)矩阵。我知道如何在 for 循环中执行此操作,但是有更多元素的方法吗?

最佳答案

这些都应该按照您的要求执行,但它们返回一个 (N-1 x M) 矩阵,我认为它们非常相似

hcat(map(x->x.p[1:N-1], results)...)

hcat([x.p[1:N-1] for x in results]...)

对于(M x N-1)输出

vcat(map(x->x.p[1:N-1]', results)...)

vcat([x.p[1:N-1]' for x in results]...)

应该可以,但速度有点慢。

关于function - 在 Julia 中将命名元组向量的元素提取到矩阵中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72162611/

相关文章:

c++ - C++ `for`在应为多个的情况下仅循环迭代一次。

julia - 如何在 Plots.jl 中标记条形图?

c - 非斜边数

c++ - 具有来自不同对象的函数的函数数组

Jquery无法在回调函数中访问$(this)

c++ - julia Cxx 在模块中封装不同的行为

julia - 如何使用 splat 运算符注释类型

javascript - 回调函数的用处

php - 为每个 img 元素添加事件类

c++ - 以下基于范围的 for 循环内幕后的列表是什么?