当所需的形状从其他变量派生时,创建一个带有随机数的矩阵
Create a matrix with random numbers when required shape is derived from other variables
当所需的形状从其他变量导出时,我想用 J 编程语言创建一个包含随机数的矩阵。
如果我使用文字整数指定其形状,我可以用 ? 3 5 $ 0
创建这样的矩阵。但是当形状为 # y
和 # x
而不是上面示例中所示的 3 和 5 时,我正在努力寻找一种方法来创建这样的矩阵。
我试过? 0 $~ # y, # x
但没用。
我想我需要一些方法来应用 #
变量列表和 return 应该放在 $~
之后的数字列表,有点像 map
其他语言的功能。有办法吗?
我认为 ?@:$
是您要找的东西
3 5 ?@:$ 0
0.031974 0.272734 0.792653 0.439747 0.136448
0.332198 0.00904103 0.7896 0.78304 0.682833
0.27289 0.855249 0.0922516 0.185466 0.257876
一般结构是 x u@:v y <-> (u (x v y))
,其中 u 和 v 是动词,参数是 x 和 y。
希望这对您有所帮助。
重新阅读您的问题,您似乎希望形状基于参数中的项目数。在这里,我将使用 #
来计算每个参数中的项目,然后使用 ,
为 $&0
创建左侧参数并将 ?
应用于结果。
3 4 5 (?@:($&0 @:,))&# 5 3 3 4 5
0.179395 0.456545 0.805514 0.471521 0.0967092
0.942029 0.30713 0.228288 0.693909 0.338689
0.632752 0.618275 0.100224 0.959804 0.517927
这是否更接近您的想法?
通常情况下,我一夜之间想到了另一种方法
3 4 5 ?@0:"0/ 1 2 3 4 5
0.271366 0.291846 0.0493541 0.72488 0.47988
0.50287 0.980205 0.58541 0.778901 0.0755205
0.0114588 0.523955 0.535905 0.5333 0.984908
当所需的形状从其他变量导出时,我想用 J 编程语言创建一个包含随机数的矩阵。
如果我使用文字整数指定其形状,我可以用 ? 3 5 $ 0
创建这样的矩阵。但是当形状为 # y
和 # x
而不是上面示例中所示的 3 和 5 时,我正在努力寻找一种方法来创建这样的矩阵。
我试过? 0 $~ # y, # x
但没用。
我想我需要一些方法来应用 #
变量列表和 return 应该放在 $~
之后的数字列表,有点像 map
其他语言的功能。有办法吗?
我认为 ?@:$
是您要找的东西
3 5 ?@:$ 0
0.031974 0.272734 0.792653 0.439747 0.136448
0.332198 0.00904103 0.7896 0.78304 0.682833
0.27289 0.855249 0.0922516 0.185466 0.257876
一般结构是 x u@:v y <-> (u (x v y))
,其中 u 和 v 是动词,参数是 x 和 y。
希望这对您有所帮助。
重新阅读您的问题,您似乎希望形状基于参数中的项目数。在这里,我将使用 #
来计算每个参数中的项目,然后使用 ,
为 $&0
创建左侧参数并将 ?
应用于结果。
3 4 5 (?@:($&0 @:,))&# 5 3 3 4 5
0.179395 0.456545 0.805514 0.471521 0.0967092
0.942029 0.30713 0.228288 0.693909 0.338689
0.632752 0.618275 0.100224 0.959804 0.517927
这是否更接近您的想法?
通常情况下,我一夜之间想到了另一种方法
3 4 5 ?@0:"0/ 1 2 3 4 5
0.271366 0.291846 0.0493541 0.72488 0.47988
0.50287 0.980205 0.58541 0.778901 0.0755205
0.0114588 0.523955 0.535905 0.5333 0.984908