我正在學習Julia語言,並按照一些教程來測試Julia中的OLS(普通最小二乘)估計。首先,我需要模擬因變量(「Y」),自變量(「X」),誤差項(ε)和參數的數據集。劇本是這樣的:如何從終端運行Julia腳本和函數?
# ols_simulate :generate necessary data
using Distributions
N=100000
K=3
genX = MvNormal(eye(K))
X = rand(genX,N)
X = X'
X_noconstant = X
constant = ones(N)
X = [constant X]
genEpsilon = Normal(0, 1)
epsilon = rand(genEpsilon,N)
trueParams = [0.1,0.5,-0.3,0.]
Y = X*trueParams + epsilon
,然後我定義的OLS功能
function OLSestimator(y,x)
estimate = inv(x'*x)*(x'*y)
return estimate
end
我刨做的是先用命令模擬從終端數據:
ols_simulate
和希望此步驟會正確生成和存儲數據,然後我可以撥打olsestimator
。但是,試圖這樣,當我在茱莉亞REPL鍵入mean(Y)
後,它給了我像
Error: UnderdefvarError: Y not defined
錯誤消息似乎將數據存放不當。更一般地說,如果我有多個腳本(腳本和函數),如何使用終端中其他人生成的數據?
謝謝。
'包括'技巧的作品,謝謝。還有一個問題,我應該用**任意**文件名(比如'OLSestimator.jl')將函數腳本保存到當前字典中,然後從REAL調用它。這就是我所做的,但它竟然是另一個**未定義的錯誤**。關於Julia函數的可用示例主要是使用命令行函數,我的問題歸結爲「如何調用函數?」 – zlqs1985
這很難理解你的問題。我認爲,「詞典」應該是「目錄」,「實際」應該是「REPL」。不過,稍微清楚一下你實際上在做什麼和看到什麼會有所幫助。如果您遇到錯誤,請引用整個錯誤消息。 –