2014-10-01 101 views
0

我想在scilab中打开一个文本文件,然后计算每个ASCII码的字符的频率。 所以这是我使用的脚本:在文本文件中计算字符的发生次数

m=mgetl("Texte.txt") 
m=strsubst(m," ",""); 
m=ascii(m); 
format(5) 
for i=1:26 
f(i)=frequence(i+64,m); 
if f(i)<>0 then 
afficher("La fréquence de .. 
"+string(ascii(i+64))+" est "+string(f(i))) 
end 
end 

,但我得到这个错误:频没有定义。它应该用于scilab作为一种功能。我使用SCILAB版本5.5.0

谢谢

+0

通过scilab文档查看,我找不到“频率”作为函数的参考。这是你创建的功能吗?如果不是,你可以提供一个指向它的文档的链接? – Grice 2014-10-01 18:45:55

回答

0

你可以使用dsearch

m=mgetl("Texte.txt") 
m=strsubst(m," ",""); 
m=ascii(strsplit(strcat(string(m)))); 
bins = (1:26)+64 

[i_bin, counts, outside] = dsearch(m, bins,"d") 

for i=1:26 
    printf("%s : %d\n", ascii(bins(i)), counts(i)) 
end