簡體   English   中英

Matlab中的訪問功能

[英]Access function in Matlab

我將能夠使用可以看到其代碼的函數,這些函數在內置的matlab函數中使用,但無法直接調用。

這些功能之一是checkdata 我可以看到此函數的代碼。 它用於內置的matlab函數(如gmdistribution.fit但我無法通過調用直接調用它

X = zeros(5,5);
checkdata(X)

如何在自己的函數中調用這些函數?

您不能調用函數checkdata因為它是私有函數。 要將功能設為文件私有,您必須將功能文件存儲在名為private的文件夾中。 例如,考慮以下文件夾結構:

-Folder A
   - m1.m
   - m2.m
   Folder private
      - privatefunction1.m
      - privatefunction2.m
Folder B
   - m3.m

m1.m和m2.m可以調用privatefunction1.m和privatefunction2.m。 m3.m無法調用這兩個私有函數中的任何一個。 有關更多詳細信息,請參閱Matlab幫助中有關私有功能的幫助

但是,如果要使用checkdata ,則可以找到checkdata.m並將其復制到另一個文件夾。

您可以在MATLABFOLDER\\toolbox\\stats\\stats\\@gmdistribution\\private找到具有此功能的m文件。 這是使函數私有的matlabs方法( 請參見此處 )。 Matlab不允許您將私有文件夾(例如該文件夾)添加到路徑中。 一種簡單的解決方法是在路徑中放置具有類似功能的m文件,這並不難,因為您可以查看代碼及其作用。 這樣做時,我建議避免命名沖突。 Matlab處理這樣的問題

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM