我想得到一个随机值为[-1,2]的矩阵
x= rand([-1,2],(3,3))
3x3 Array{Int64,2}:
-1 -1 -1
2 -1 -1
-1 -1 -1
Run Code Online (Sandbox Code Playgroud)
但它只考虑-1和2而且我正在寻找连续的价值 - 例如-0.9,0.75,-0.09,1.80 ......我怎么能这样做?
谢谢
我的列数等于行数.并且对角线等于零.我该如何构建这个矩阵?
#mat
# [,1] [,2] [,3] [,4]
#[1,] 0 NA NA NA
#[2,] 1 0 NA NA
#[3,] 2 4 0 NA
#[4,] 3 5 6 0
Run Code Online (Sandbox Code Playgroud)
我试过这个
x=rand(4,4)
4x4 Array{Float64,2}:
0.60064 0.917443 0.561744 0.135717
0.106728 0.72391 0.0894174 0.0656103
0.410262 0.953857 0.844697 0.0375045
0.476771 0.778106 0.469514 0.398846
c=LowerTriangular(x)
4x4 LowerTriangular{Float64,Array{Float64,2}}:
0.60064 0.0 0.0 0.0
0.106728 0.72391 0.0 0.0
0.410262 0.953857 0.844697 0.0
0.476771 0.778106 0.469514 0.398846
Run Code Online (Sandbox Code Playgroud)
但我正在寻找这样的东西
c=LowerTriangular(x)
4x4 LowerTriangular{Float64,Array{Float64,2}}:
0.0 NA NA NA
0.106728 0.0 NA NA
0.410262 0.953857 …Run Code Online (Sandbox Code Playgroud) 我有一个随机数的向量,我想使用randperm()函数随机置换,如下所示,但它不起作用.
X=rand(100000) # a vector of 100000 random elements
Y=randperm(X) # want to permute randomly the vector x
Run Code Online (Sandbox Code Playgroud)
返回的错误是: 错误:MethodError:没有方法匹配./boot.jl:237中的eval(:: Module,:: Any)中的randperm(:: Array {Float64,1})
谢谢
我有一个庞大的数据集,它分为k个小型数据集,其中k = 100。我想将这些小型数据集存储在不同的文件中。为了存储我的海量数据集,我使用了以下指令:
using JLD, HDF5
X=rand(100000)
file = jldopen("path to my file/mydata.jld", "w") # the extension of file is jld so you should add packages JLD and HDF5, Pkg.add("JLD"), Pkg.add("HDF5"),
write(file, "X", X) # alternatively, say "@write file A"
close(file)
Run Code Online (Sandbox Code Playgroud)
知道l将我的数据集分为k个子数据集,其中k = 100
function get_mini_batch(X)
mini_batches = round(Int, ceil(X / 100))
for i=1:mini_batches
mini_batch = X[((i-1)*100 + 1):min(i*100, end)]
file= jldopen("/path to my file/mydata.jld", "w")
write(file, "mini_batch", mini_batch) # alternatively, say "@write file mini_batch"
lose(file)
end
end
Run Code Online (Sandbox Code Playgroud)
但是此功能允许将不同的子数据集存储在一个文件中,该文件在每次迭代时都会被覆盖。
file= …Run Code Online (Sandbox Code Playgroud) 我有 200 个向量;每个长度为 10000。
我想填充一个矩阵,使每条线代表一个向量。
我有一个由重复值和NaN值组成的2500个值的向量.我想删除所有NaN值并计算每个其他值的出现次数.
y
2500-element Array{Int64,1}:
8
43
NaN
46
NaN
8
8
3
46
NaN
Run Code Online (Sandbox Code Playgroud)
例如:8的出现次数为3次,46次出现次数为2次,出现次数为43次为1次.
我将FFT应用于每个图像.我提取了图像1和2的角度或相位.之后,我想交换两个图像之间的相位响应,但保持大小完整.我到目前为止的代码是:
Image1=double(imread('/home/anelmad/Desktop/ml/signal_images_processing/tp6/barbara.png'))/255;
Image2=double(imread('/home/anelmad/Desktop/ml/signal_images_processing/tp6/lena.bmp'))/255;
Image1=fft2(Image1);
Image2=fft2(Image2);
figure(1);
imshow(angle(Image1));
x=(angle(Image1));
angle(Image2)=x;
figure(2);
imshow(Image2);
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
error: assignment failed, or no method for '<unknown type> = matrix'
Run Code Online (Sandbox Code Playgroud)
我认为问题是我们应该修改傅里叶变换矩阵(fft2)中的复数.那是对的吗?
l具有n乘n的矩阵,其转换为下三角矩阵.然后我想使用vec()转换下部的traingular矩阵,但它不起作用.这是我的代码错误
x=rand(4,4)
4x4 Array{Float64,2}:
0.453539 0.00897806 0.590051 0.401164
0.219694 0.322613 0.826784 0.528058
0.216173 0.752796 0.318784 0.721735
0.648246 0.0184203 0.6562 0.69907
c=LowerTriangular(x)
4x4 LowerTriangular{Float64,Array{Float64,2}}:
0.453539 0.0 0.0 0.0
0.219694 0.322613 0.0 0.0
0.216173 0.752796 0.318784 0.0
0.648246 0.0184203 0.6562 0.69907
vec(c)
ERROR: ArgumentError: Triangular matrix must have two dimensions
in similar at linalg/triangular.jl:27
in reshape at abstractarray.jl:213
in vec at abstractarraymath.jl:14
Run Code Online (Sandbox Code Playgroud)
是否有任何函数将三角矩阵转换为向量?
谢谢
我想创建一个具有这种结构的数组
k [1] = 1
k [2] = 2
k [3] = 3
k [4] = 4
我试着用这种方式但它不起作用
n= 10
for i in 1:n
k[i]= i
end
Run Code Online (Sandbox Code Playgroud)
有什么建议 ?
l具有m n矩阵(15000 2300)并且我想要提取整个矩阵> 3000或<700的值,然后仅在列上提取,然后仅在行中提取.我怎么能这样做.我们有一个函数find( x->(x == 3), m),它返回一个值的索引,但我需要一个矩阵,并且我正在寻找像m [1,5],m [2,6] ......等结果.我该怎么做?
m= rand (1:5000,60,40)
Run Code Online (Sandbox Code Playgroud)
谢谢