当前位置:编程学习 > C#/ASP.NET >>

一个关键字统计的算法,给想点办法啊

IDE是VS2010,数据库是oracle数据库,数据库中有一个表A,其中有两列 L1 ,L2,都是字符串类型。

现在要做到就是统计L2列中,关键字出现频率列表。

也就说,各个关键字出现的频率

如:

关键字         出现次数

商圈              315

理想的            264

人生是如此        119

周围有什么吃的    95

.                 .
.                 .
.                 .
.                 .

上面列表中的关键字都是不确定的,只是我随便打上去的,真实关键字是根据所有L2列中出现的次数进行统计出来的(这个关键字未知需要去统计出来)....

有哪位能做出来不?用c#以及oracle数据库实现都可以 统计 关键字  --------------------编程问答-------------------- 没人懂吗?帮忙顶顶啊,谢谢 --------------------编程问答--------------------
 protected void Page_Load(object sender, EventArgs e)
        {
            string str = "aabbbcccddd";
            string gjz = "aa";

            int query = str.Where(x => gjz.Contains(x)).Count();
            Response.Write(query);
        }
--------------------编程问答--------------------
引用 2 楼 zhanglong_longlong 的回复:
 protected void Page_Load(object sender, EventArgs e)
        {
            string str = "aabbbcccddd";
            string gjz = "aa";

            int query = str.Where(x => gjz.Contains(x)).Count();
            Response.Write(query);
        }


看清楚要求啊,是不知道关键字的情况下,你这个str,gjz都是固定了的,是根据所有L2列中出现的次数进行统计出来 --------------------编程问答-------------------- select 关键字,count(关键字) from 表 group by 关键字列 --------------------编程问答-------------------- 一般是添加关键字时就去累计关键字表 +1  不做精确计算,只做大概数值 --------------------编程问答-------------------- 获者做任务定时去一个个统计(这个工作是很费时的,有可能在网页超时都不可能完成,要用到服务),然后写入缓存文件中,然后网页读取缓存文件 --------------------编程问答--------------------
引用 4 楼 caozhy 的回复:
select 关键字,count(关键字) from 表 group by 关键字列


这么说吧,我要从一行字符串中找出关键字,然后再统计这个关键字在所有行中出现的频率

重点就在于如何获取到一行字符串的关键字,通过程序获取而不是人为输入 --------------------编程问答-------------------- 你自己对关键字也应该有个定义才对,什么是关键字?

的、是、我、吃吧、睡吧、好吗、啊?、滚……

这些算不算关键字? --------------------编程问答-------------------- 哪怕搜索引擎,它对关键字也是有定义的 --------------------编程问答--------------------
引用 8 楼 rainxies 的回复:
你自己对关键字也应该有个定义才对,什么是关键字?

的、是、我、吃吧、睡吧、好吗、啊?、滚……

这些算不算关键字?


词库?是要弄一个,现在是怎么确定一个字符串中的关键字,如一百个字的字符串里面拿到关键字 --------------------编程问答--------------------
引用 7 楼 yanglei6979431 的回复:
Quote: 引用 4 楼 caozhy 的回复:

select 关键字,count(关键字) from 表 group by 关键字列


这么说吧,我要从一行字符串中找出关键字,然后再统计这个关键字在所有行中出现的频率

重点就在于如何获取到一行字符串的关键字,通过程序获取而不是人为输入


那需要做中文分词,然后建立倒排索引。 --------------------编程问答-------------------- 关键字依赖于统计, 而统计又依赖于关键字, 你觉得这个问题有解吗? --------------------编程问答--------------------
引用 12 楼 chokochu 的回复:
关键字依赖于统计, 而统计又依赖于关键字, 你觉得这个问题有解吗?

这个命题本身就是一个死锁!
--------------------编程问答-------------------- 让电脑来确定 关键字 具体是什么?电脑没有你想的那么聪明...
不要说电脑没那么聪明,就是让人来定义 关键字 也很困难..
--------------------编程问答-------------------- 关键字这个应该不能自动生成的吧。 --------------------编程问答--------------------
引用 14 楼 laiyongxin 的回复:
让电脑来确定 关键字 具体是什么?电脑没有你想的那么聪明...
不要说电脑没那么聪明,就是让人来定义 关键字 也很困难..


我定义了一个词库,然后通过输入的字符串从中挑选关键字 --------------------编程问答-------------------- 首先你得让电脑知道什么是关键字。 --------------------编程问答-------------------- 建议你看看这个:
http://www.iteye.com/topic/1118055 --------------------编程问答-------------------- TOKEN_COUNT应该就是你要的
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,