记录几种有关libsvm格式数据的list和dict用法

时间:2023-03-10 06:27:21
记录几种有关libsvm格式数据的list和dict用法
 #  list元素求和
sum = reduce(lambda x,y: x+y, mylist)
 # 比较两个 lists 的元素是否完全一致
if all(x==y for x, y in zip(X, Y))
do something
 # 按照 key 排列字典的元素,以libsvm格式输出
sorted(dd.keys())
sorted_dict = [(key, dd[key]) for key in sorted(dd.keys())]
# 以libsvm格式打印
5 print ' '.join([str(key)+':'+str(dd[key]) for key in sorted(dd.keys())])
 # 按照 value 排序字典的元素
# 仅输出排序后的key
sorted_key = [key for key in sorted(dd, key=dd.get, reverse=True)]
# 仅输出排序后的字典
sorted_dict = [(key, dd[key]) for key in sorted(dd, key=dd.get, reverse=True)]
# 以libsvm格式打印字典
print ' '.join([str(key)+':'+str(dd[key]) for key in sorted(dd, key=dd.get, reverse=True)])
 # get key intersection of two dictionaries
intersect = set(dict_A.keys()) & set(dict_B.keys())
 # sort a list of tuple
# 以tuple的第零个元素排序
sorted_list = sorted(tuple_list, key=lambda x:x[0])
 # 把libsvm格式数据转换为dict对象
mydict = {x.split(':')[0]:x.split(':')[1] for x in mylist}
 # sort list and return index of list
# 对list排序,返回有序元素的原始下标值
sorted_index = sorted(range(len(list)), key=lambda k: list[k])