用matlab统计英语文章中的字母两两组合出现的概率代码
时间: 2024-01-05 09:02:54 浏览: 67
基于matlab对一篇诗歌出现字母的统计概率进行哈夫曼编码
以下是用MATLAB统计英语文章中的字母两两组合出现的概率的代码:
```matlab
% 读取英语文章
fid = fopen('english_article.txt', 'r');
text = fscanf(fid, '%c');
fclose(fid);
% 将英语文章转换为小写字母
text = lower(text);
% 统计字母出现次数
count = zeros(26,1);
for i = 1:length(text)
if text(i) >= 'a' && text(i) <= 'z'
count(text(i)-'a'+1) = count(text(i)-'a'+1) + 1;
end
end
% 统计字母两两组合出现次数
pair_count = zeros(26,26);
for i = 1:length(text)-1
if text(i) >= 'a' && text(i) <= 'z' && text(i+1) >= 'a' && text(i+1) <= 'z'
pair_count(text(i)-'a'+1, text(i+1)-'a'+1) = pair_count(text(i)-'a'+1, text(i+1)-'a'+1) + 1;
end
end
% 计算字母两两组合出现的概率
pair_prob = pair_count ./ sum(count);
% 显示结果
disp('字母两两组合出现的概率:');
for i = 1:26
for j = 1:26
fprintf('%c%c: %.4f\t', i+'a'-1, j+'a'-1, pair_prob(i,j));
end
fprintf('\n');
end
```
其中,`english_article.txt` 是英语文章的文件名,需根据实际情况进行修改。代码将英语文章转换为小写字母,并统计了字母和字母两两组合出现的次数,最后计算了字母两两组合出现的概率,并输出结果。
阅读全文