python统计类标签个数

Rooobins 2018-05-19 11:15:52
def label_uniq_cnt(data):
"""
统计数据集中不同的类标签label的个数
input:data(list):原始数据集
output:label_uniq_cnt(int):样本中的标签的个数
"""


label_uniq_cnt={}

for x in data:
label=x[len(x)-1] #取得每一个样本的类标签label
if label not in label_uniq_cnt:
label_uniq_cnt[label]=0
label_uniq_cnt[label]=label_uniq_cnt[label]+1
return label_uniq_cnt



有一个样本集N,根据n各标签A,B,C....分类;例如样本集N根据标签A分类,得到分类结果许多子样本,然后再根据标签B对每个子样本分类,以此类推。
上面函数代码,统计数据集中不同的类标签的个数
但是,label=x[len(x)-1]取得每一个样本的类标签label 一直看不懂 怎么取得的
谢指点
...全文
2134 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
欢乐的小猪 2018-05-21
  • 打赏
  • 举报
回复
对于每一个样本x(数组),它可能有很多特征(属性),数组的最后一项存储样本的标签。 故,len(x)-1为最后一项的索引值 x[len(x)-1]为标签
虫洞 2018-05-19
  • 打赏
  • 举报
回复
要看你传进来的data具体结构 每一列具体含义
发疯疯 2018-05-19
  • 打赏
  • 举报
回复
一般来说,数据集的标签列都是在最后一列,这里for 循环按行读取数据集data,每行都是一个数据样本x,每个样本x的最后一个值为该样本的类标签,由于python中数组、列表等索引都是从零开始的,所以x[len(x)-1]就是样本x的最后一个值,也就是该样本的标签。

37,743

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧