2012-11-21 21 views
0

我想創建一個名爲E7stats的函數,它對csv文件中包含的第一個中期語句的分數執行簡單的統計分析。該函數接受一個字符串輸入,即文件名,它是csv文件的名稱,並返回一個輸出,一個1×2結構數組S,兩個條目包含四個字段mean,std d ev,max和min,這是電子和紙質期中分數的均值,標準偏差,最大值和最小值。該函數還創建兩個中期1分數與30個同等大小的分數的兩個直方圖。電子和紙質中期1的比分被存儲在第一和第二列在CSVMATLAB錯誤:「以前似乎用作函數或命令」

我的問題是,我得到的錯誤:

「的意思是」出現以前被用作一個功能或命令, 與此處使用的變量名稱衝突。 此錯誤的一個可能原因是您忘記初始化 變量 變量,或者您已使用load或 eval隱式初始化它。

我知道爲什麼我得到的錯誤,但我不知道如何解決它,因爲如上所述我的變量需要命名平均,最小,最大。歡迎任何建議。謝謝!

function S= E7stats(filename) 
filename='grades_E7MT1.csv'; 
S=csvread(filename,1,0); 
stddev = std(S) 
mean= mean(S) 
min= min(S) 
max= max(S) 

我問教練:

我們必須顯示結構數組中的內容,或者它應該只是「1×2結構數組字段一起返回的結構數組: 意味着 STDDEV 最大 和他回答說: 該結構是函數的輸出。您不需要在命令窗口中顯示它。只確保它具有正確的字段和值。

所以現在我真的很困惑我的功能應該輸出什麼?抱歉,所有的困惑!

+0

這是不可能知道的,如果你不告訴我們錯誤信息是什麼.. 。 – Pete

+0

爲什麼你不能改變變量的名字?我沒有看到你在哪裏列出了這個規範,以及爲什麼你會把它放在首位。 – Squazic

回答

3

請勿使用函數名稱mean()作爲變量的名稱。叫它myMean或類似的東西。

或者,你可以創建一個具有字段名稱,如平均值,最小值和最大值的結構:

d.mean = mean(); 
d.min = min(); 
+0

我想你剛剛解決了我的問題:我需要將它返回給結構數組!謝謝 :) –

相關問題