gpt4 book ai didi

php - 在php中获取两个数组的相似度百分比

转载 作者:行者123 更新时间:2023-12-02 06:40:21 24 4
gpt4 key购买 nike

我需要获取两个数组并得出相似度百分比。即:

array( 0=>'1' , 1=>'2' , 2=>'6' , 3=>array(0=>1))

版本

array( 0=>'1' , 1=>'45' , 2=>'6' , 3=>array(0=>1))

我认为 % 是 75

array( 0=>'1' , 1=>'2' , 2=>'6' , 3=>array(0=>'1'))

版本

array( 0=>'1' , 1=>'2' , 2=>'6' , 3=>array(0=>'55'))

不确定如何解决这个问题.. 只需要以可行的 float 百分比结束。谢谢。

最佳答案

这是我最近解决这个问题的方法:

$array1 = array('item1','item2','item3','item4','item5');
$array2 = array('item1','item4','item6','item7','item8','item9','item10');

// returns array containing only items that appear in both arrays
$matches = array_intersect($array1,$array2);

// calculate 'similarity' of array 2 to array 1
// if you want to calculate the inverse, the 'similarity' of array 1
// to array 2, replace $array1 with $array2 below

$a = round(count($matches));

$b = count($array1);

$similarity = $a/$b*100;

echo 'SIMILARITY: ' . $similarity . '%';

// i.e., SIMILARITY: 40%
// (2 of 5 items in array1 have matches in array2 = 40%)

关于php - 在php中获取两个数组的相似度百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9298371/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com