我有一个巨大的xlsx文件,其中包含关键字排名,我需要计算排名的可见性。 Excel无法处理这么大的文件,所以我正在学习R。
无论如何,要计算关键字的可见性,我需要有这个公式:
排名*搜索量的百分比。
%取决于等级,而我任意使用:
1 - 90%
2 - 80%
3 - 70%
4 - 60%
5 - 50%
6 - 40%
7 - 30%
8 - 20%
9 - 10%
10 - 5%
11+ - 0%
当我可以在Excel中工作时,我会将上面的图表放在一张表中,并按搜索量执行排名和*的查找。例如:
Keyword |rank |search volume |visibility
keyword1 |1 |1,000 |900
Keyword2 |5 |50,000 |25,000
Keyword3 |12 |3,500 |0
我如何在R中这样做?我对R很新,用for循环尝试过一些东西,但没有任何效果。
提前致谢
答案 0 :(得分:1)
使用名为rank_data的初始数据框,如此..
:h text-objects
您可以创建一个小函数,并使用dplyr库中的mutate函数将结果附加到新列。
keyword rank search_volume
1 A 1 1000
2 B 5 50000
3 C 12 3500
返回包含可见性列的新数据框。
library(dplyr)
visFunc <- function(rank, search_volume){
if(rank == 1){
rank_pct <- 0.90
}
else if(rank == 5){
rank_pct <- 0.50
}
else if(rank > 10){
rank_pct <- 0
}
return(rank_pct * search_volume)
}
visabilityData <- mutate(rank_data, visability = mapply(visFunc, rank,search_volume))
显然可以根据需要调整功能。
答案 1 :(得分:0)
感谢您的回复,但我设法弄清楚了。
我制作了一个电子表格,该列表在A栏中排名,B列中的可见性%,导入此电子表格并在此电子表格中合并排名,并在主电子表格中排名。然后我可以做所有的计算。