JULIA:如何在 Julia 中随机排列向量?

2024-01-28

我有一个随机数向量,我想使用 randperm() 函数对其进行随机排列,如下所示,但它不起作用。

X=rand(100000) # a vector of 100000 random elements
Y=randperm(X) # want to permute randomly the vector x

返回的错误是:错误:MethodError:没有匹配 randperm(::Array{Float64,1}) 的方法 在 eval(::Module, ::Any) 中 ./boot.jl:237

谢谢


Use shuffle()

如果您的唯一目标是随机排列向量,您可以使用shuffle() https://docs.julialang.org/en/v1/stdlib/Random/#Random.shuffle(的一部分Random模块):

julia> using Random;

julia> X = collect(1:5)
5-element Array{Int64,1}:
 1
 2
 3
 4
 5

julia> shuffle(X)
5-element Array{Int64,1}:
 5
 4
 1
 2
 3

如果你不想分配新的向量,但想就地洗牌,你可以使用shuffle!():

julia> shuffle!(X);

julia> X
5-element Vector{Int64}:
 3
 4
 2
 5
 1

randperm()

randperm() https://docs.julialang.org/en/v1/stdlib/Random/#Random.randperm接受一个整数n并给出长度为 n 的排列。您可以使用此排序来重新排序原始向量:

julia> X[randperm(length(X))]
5-element Array{Int64,1}:
 3
 4
 1
 2
 5

奖励:样品无需更换

您还可以使用StatsBase.sample() https://juliastats.org/StatsBase.jl/stable/sampling/#StatsBase.sample采样相同的length(X)数组中的元素无需替换:

julia> import StatsBase;

julia> StatsBase.sample(X, length(X), replace=false)
5-element Vector{Int64}:
 5
 2
 4
 1
 3
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JULIA:如何在 Julia 中随机排列向量? 的相关文章

  • 使用数组 eltype 实现采样器

    钩入rand过去更容易 我想我遵循了描述在文档中 https docs julialang org en v1 stdlib Random A simple sampler without pre computed data 1 但它似乎不
  • 将 JSON 数组读入类似 Julia DataFrame 的类型

    给定一个 JSON 文件 JSON 包会愉快地解析它 但如果我想把它作为DataFrame 或任何其他柱状数据结构 获得它的好方法是什么 目前 例如 我有 using JSON using DataFrames json str color
  • 朱莉娅中的矢量化“in”函数?

    我经常想要循环遍历数据帧的长数组或列 并且对于每个项目 查看它是否是另一个数组的成员 而不是做 giant list a c j good letters a b isin falses size giant list 1 for i 1
  • Julia 多次调度失败

    v06 我想写一个需要 2 到 3 个参数的签名 第一个是整数或整数向量 第二个是整数向量或整数矩阵 第三个是整数向量或未指定 我第一次尝试是这样的 function foo a Union Integer Vector Integer b
  • 如何加快 Julia 脚本的启动时间

    我编写了一个脚本来在 Julia 中绘制每日数据 但我发现它运行缓慢 似乎没有理想的方法来加速它 例如 foo jl bin bash exec julia O0 compile min BASH SOURCE 0 using Unicod
  • Julia 泛型函数类型参数

    我定义了一个函数如下 function approx pi n tot Float64 0 0 for i in 1 n x rand y rand if x 2 y 2 lt 1 tot 1 end end tot n 4 end pri
  • 如何让 Rosenbrock23 在 ParameterizedFunctions.jl DSL 中使用 ODE?

    进一步这个问题 https stackoverflow com questions 54422068 how to fix typeerror in setindex in differentialequations jl 54423008
  • Julia DataFrames 中的高效自定义排序?

    有没有一种快速的方法来指定自定义订单sort sort 在 Julia 数据框架上 julia gt using DataFrames julia gt srand 1 julia gt df DataFrame x rand 10 y r
  • Julia:生成唯一的随机整数数组

    我正在尝试创建 10 个唯一随机整数的元素数组 但是我无法创建具有唯一值的数组 Julia 中是否有类似 Python 的东西样本函数 https docs python org 2 library random html random s
  • Julia - 迭代字典中的键组合

    有没有一种巧妙的方法来迭代字典中的键组合 我的字典有这样的值 1 gt 1 2 2 3 gt 15 3 gt 6 7 8 4 9 11 gt 3 我需要做的是获取所有长度的键组合1 n where n可能是FX 3 就像上面的例子一样 我想
  • 如何在 Julia 中提供可重现的样本数据

    Here on stackoverflow com 当我提供样本数据来制作可重现的示例时 我该如何以朱利安方式做到这一点 In R例如dput df 将输出一个字符串 您可以用它来创建df再次 因此 您只需将结果发布到 stackoverf
  • 如何创建并推送到共享或分布式数组数组?

    我编写了 Julia 代码 其中初始化一个空数组 如下所示 a 稍后在代码中 我简单地推送到该数组 如下所示 推 a b 其中 b c d e 是另一个数组 每个 b 可以具有不同的长度 这在非并行化代码中工作得很好 但是 我想在并行代码中
  • 如何更改julia(1.8.5)默认安装包的位置?

    如何更改julia 1 8 5 默认安装包的位置 我不想把包安装到c盘 因为pwd 和homedir 都默认到c盘 如何修改 我想每次都像安装python包一样打开Julia 有固定的安装路径 例如user Base User site 我
  • Julia 似乎没有使用字符串来执行插值

    官方文档指出 连接和字符串插值调用string 将对象转换为字符串形式 然而 以下最小工作示例似乎证明了其他情况 type MyType x Int end import Base string Base string m MyType w
  • 有没有办法在 writetable() 中使用字符串作为分隔符 - Julia

    当使用 writetable 将数据帧写入文件时 我希望能够将分隔符设为空格然后逗号 即 作为分隔符 我知道 writetable 只能选择将单个字符作为分隔符参数 是否有可能的解决方法能够将字符串作为分隔符 或者 是否可以简单地在数据框中
  • 朱莉娅中未显示情节

    我有一个名为 mycode jl 的文件 其中包含以下代码here https juliastats org MultivariateStats jl dev pca using MultivariateStats RDatasets Pl
  • Julia 中过时的软件包列表

    有没有办法列出 Julia 中所有过时的软件包 相当于pip3 list outdated在Python中 我做了几次搜索 1 https docs julialang org en v1 stdlib Pkg 2 https pkgdoc
  • 如何在一张图中显示多个相邻的图像?

    我正在使用 Julia PyPlot 和 Images 来处理一些图片 因为显示几十个图是不可能的 所以我想堆叠图像 如下所示 我有图像数据Array Array Float64 2 1 已经正常化了 以下代码仅显示最后一个最小的图像 该数
  • 获取参数类型的参数

    假设我定义了一个这样的类型 type Point Tx Ty end 然后我创建一个这种类型的变量 例如 a Point Int64 something 现在 我只知道我可以获得以下类型a by typeof a 那是 Point Int6
  • 并行模拟写入同一文件

    我的目标是在集群上并行运行 10 000 个左右的 Julia 编码模拟 每个模拟独立于所有其他模拟 每个模拟都有一个要输出的数字 以及有关哪个模拟产生该数字的 3 列信息 因此 强制每个模拟打印在单独的文件上对我来说听起来有点愚蠢 我可以

随机推荐

  • Javascript charAt() 打破多字节字符串

    此代码在 Nodejs v0 10 21 中崩溃 usr bin env node use strict var urlEncoded http zh wikipedia org wiki F0 A8 A8 8F var urlDecode
  • Python请求,如何将内容类型添加到multipart/form-data请求

    我使用 python requests 通过 PUT 方法上传文件 远程 API 仅当正文包含属性时才接受任何请求 Content Type i mage png 不作为请求标头 当我使用 python requests 时 请求因缺少属性
  • 迭代器性能

    与直接使用指针相比 实现和使用迭代器是否会带来任何类型的性能损失 假设我们使用最高的编译器优化 代码来自http www cplusplus com reference iterator iterator http www cplusplu
  • 迭代器实现应该如何处理检查异常?

    我将 java sql RecordSet 包装在 java util Iterator 中 我的问题是 如果任何记录集方法抛出 SQLException 我该怎么办 The java util Iterator javadoc http
  • 如何在eclipse中运行maven项目

    我有一个带有 TestNG 的 Java Maven 项目 我想从 eclipse 运行它 我使用 Eclipse Kepler 并安装了 m2eclipse 插件 但是菜单 Run as 中没有任何与 maven 连接的选项 有人可以帮我
  • 当我单击“确定”按钮时,Android AlertDialog 总是退出

    有没有办法在单击 确定 后进行验证 我没有忽略它 但当我单击 确定 时它会关闭 我编写了一个使用一些编辑文本的自定义 AlertDialog 问题是我无法验证任何内容 如果验证失败 我想更改消息并告诉用户 但它只是关闭 我正在使用Alert
  • Blazor 服务器应用程序中的 HttpContext.Session

    我正在尝试使用HttpContext Session在我的 ASP NET Core Blazor Server 应用程序中 如此处所述MS Doc https learn microsoft com en us aspnet core f
  • TCPDF:将文本剪切到单元格宽度

    我正在广泛使用 TCPDF 的 Cell 方法生成 PDF 报告 使用 Cell 方法打印的文本超出了方法中指定的宽度 我只想打印适合指定宽度的文本部分 但不要溢出或换行到下一行 我不想要字体拉伸策略 我搜索了很多但找不到解决方案 还有其他
  • 如何优雅地为具有多态关联的模型构建表单?

    这是我的模型 class Lesson lt ActiveRecord Base belongs to topic polymorphic gt true validates presence of topic type topic id
  • 如何检测三角形区域的触摸

    对于我的应用程序 我需要将 iPhone 的屏幕对角线分成 4 个部分 并检测哪个部分被触摸 我很困惑 因为我的区域是三角形而不是正方形 我找不到解决方案来检测哪个三角形被触摸 我用 TouchBegan 方法得到了被触摸的点 然后我被卡住
  • 收到电子邮件时电子表格自动更新(发布/订阅)但信息错误[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我在 Google Cloud Platform 上设置了第一个 Pub Sub 它使用 Gmail API 在每次收到电子邮件时更新
  • xml 文档中禁止 DTD 异常

    当尝试在 C 应用程序中解析 XML 文档时 我收到此错误 出于安全原因 此 XML 文档中禁止 DTD 要启用 DTD 处理 请将 XmlReaderSettings 上的 ProhibitDtd 属性设置为 false 并将设置传递到
  • 在动态功能模块中找不到@BindindAdapter

    我在应用程序模块中有扩展功能 BindingAdapter imageSrc fun setImageUrl view ImageView userId Int try val drawableRes when userId 6 0 gt
  • 使用网站站长工具测试转义片段搜索

    我的网站是用 AngularJS 编写的 所以我最近创建了所有内容的 HTML 快照 将转义片段标签添加到所有页面的头部 元名称 fragment 内容 然后尝试测试以查看新设置是否在网站站长工具中正常运行 当我查看源代码时 我看到转义的片
  • Javascript 画布像素操作

    我有产品图片 每个图片都有两个可配置区域 如下所示 一 背景 2 前景 我必须开发一项功能 让客户可以更改两个区域的颜色并保存设计 我的问题是 我正在遍历图像以读取旧像素值并用新选择的颜色更改它 位旧像素值不一致 图像上存在纹理效果 这会导
  • 在 PostgreSQL 中设置双精度格式

    我有一个包含 3 列的表 customer name varchar account type varchar current balance double precision current balance 的示例值 1200 1500
  • io.sockets.on 无法在 Node.js 中的路由内工作

    我正在尝试在 Node js 和 Express 应用程序的路由内使用 io sockets on 我一直在关注这里所说的 https stackoverflow com a 31277123 8271839 https stackover
  • 在 Laravel 中通过身份验证保护所有管理/路由

    我是 Laravel 的新手 正在为我的第一个应用程序设置管理面板授权 我当前设置文件的方式是 controllers admin dashboard php settings php non admin controller1 php n
  • 以闪亮的方式打印文本

    我已经阅读了使用 HTML 在 Shiny 中打印单独行的各种方法 但并不满意 我的目标是对各种自变量进行装箱 并以 SQL 语句的形式提供代码 然后用户可以使用该代码在 SAS 中进行装箱 我最终希望在我的闪亮应用程序中看到打印的文本是执
  • JULIA:如何在 Julia 中随机排列向量?

    我有一个随机数向量 我想使用 randperm 函数对其进行随机排列 如下所示 但它不起作用 X rand 100000 a vector of 100000 random elements Y randperm X want to per