gpt4 book ai didi

arrays - 相当于 julia 中的 numpy.c_

转载 作者:行者123 更新时间:2023-12-05 00:53:09 27 4
gpt4 key购买 nike

您好,我正在阅读这本书 https://nnfs.io/但是使用 JuliaLang(更好地了解该语言并更频繁地使用它是一种 self 挑战。而不是在 Python 中做同样的旧事。)

我遇到过他们自定义编写了一些函数的书的一部分,我需要在 JuliaLang 中重新创建它...

来源:https://cs231n.github.io/neural-networks-case-study/

python

N = 100 # number of points per class
D = 2 # dimensionality
K = 3 # number of classes
X = np.zeros((N*K,D)) # data matrix (each row = single example)
y = np.zeros(N*K, dtype='uint8') # class labels
for j in range(K):
ix = range(N*j,N*(j+1))
r = np.linspace(0.0,1,N) # radius
t = np.linspace(j*4,(j+1)*4,N) + np.random.randn(N)*0.2 # theta
X[ix] = np.c_[r*np.sin(t), r*np.cos(t)]
y[ix] = j
# lets visualize the data:
plt.scatter(X[:, 0], X[:, 1], c=y, s=40, cmap=plt.cm.Spectral)
plt.show()

到目前为止我的 julia 版本....

N = 100 # Number of points per class
D = 2 # Dimensionality
K = 3 # Number of classes

X = zeros((N*K, D))
y = zeros(UInt8, N*K)


# See https://docs.julialang.org/en/v1/base/math/#Base.range

for j in range(0,length=K)
ix = range(N*(j), length = N+1)

radius = LinRange(0.0, 1, N)
theta = LinRange(j*4, (j+1)*4, N) + randn(N)*0.2
X[ix] = ????????

end

注意 ????????? 区域,因为我现在正试图破译 Julia 是否有这个 numpy 函数的等价物

https://numpy.org/doc/stable/reference/generated/numpy.c_.html

感谢任何帮助.. 或者告诉我是否需要自己写一些东西

最佳答案

这是一个特殊对象,可为列连接提供良好的语法。在 Julia 中,这只是内置在语言中,因此您可以这样做:

julia> a=[1,2,3];        

julia> b=[4,5,6];

julia> [a b]
3×2 Matrix{Int64}:
1 4
2 5
3 6

对于您的情况,儒略等效于 np.c_[r*np.sin(t), r*np.cos(t)] 应该是:

[r .* sin.(t)  r .* cos.(t)]

要了解 Python 的动机,您还可以查看: numpy.r_ is not a function. What is it?

关于arrays - 相当于 julia 中的 numpy.c_,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68228179/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com