【问题标题】:merging arrays and word frequency合并数组和词频
【发布时间】:2011-10-02 00:37:39
【问题描述】:

所以我正在循环浏览一个包含 41 段的文档。对于每个段落,我试图 [1] 首先将字符串分解为一个数组,然后获取该段落的词频。然后我想结合所有段落的数据,得到整个文档的词频。

我可以获得给定段落的“单词”及其“频率”的数组,但我无法合并每个段落的结果以获得“整个文档的单词频率” . 这是我所拥有的:

function sectionWordFrequency($sectionFS)
{
$section_frequency = array();
$filename = $sectionFS . ".xml";
$xmldoc = simplexml_load_file('../../editedtranscriptions/' . $filename);
$xmldoc->registerXPathNamespace("tei", "http://www.tei-c.org/ns/1.0");
$paraArray = $xmldoc->xpath("//tei:p");

foreach ($paraArray as $p)
{
$para_frequency = (array_count_values(str_word_count(strtolower($p), 1)));
$section_frequency[] = $para_frequency;
}


return array_merge($section_frequency);
}

/// now I call the function, sort it, and try to display it
$section_frequency = sectionWordFrequency($fs); 
ksort($section_frequency);

foreach ($section_frequency as $word=>$frequency)
{
 echo $word . ": " . $frequency . "</br>";
}

现在我得到的结果是:

1: 数组 2:数组 3:数组 4:数组

非常感谢任何帮助。

【问题讨论】:

    标签: php arrays word-frequency


    【解决方案1】:

    尝试替换此行

    $section_frequency[] = $para_frequency;
    

    有了这个

    $section_frequency = array_merge($section_frequency, $para_frequency);
    

    然后

    return $section_frequency
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-21
      • 2014-11-22
      • 1970-01-01
      • 1970-01-01
      • 2017-03-26
      相关资源
      最近更新 更多