【python】常用函数
使用list生成dict(可指定单条长度和数据类型,splen为4即为list中每4行组成dict中一条)
def list2dict(srclist,splen,datatype):# datatype: 0-str 1-int 2-float
dstdict={}
for i in range(0,int(len(srclist)/splen)):
dstdict[srclist[splen*i]]=[]
for j in range(1,splen):
if datatype==0:
dstdict[srclist[splen*i]].append(srclist[splen*i+j])
elif datatype==1:
dstdict[srclist[splen*i]].append(int(srclist[splen*i+j]))
elif datatype==2:
dstdict[srclist[splen*i]].append(float(srclist[splen*i+j]))
else:
print 'please choose the datatype'
return False
return dstdict
计算两个list的距离(注意不能用numpy的linalg.norm,因为用numpy的linalg.norm的话如果两个list相等就会报错(因为求了0向量的范数))
def cal_list_dist(srclist1,srclist2):
if len(srclist1)!=len(srclist2):
print 'error in cal_list_dict, len not equal!'
return False
listerror=0
for i in range(0,len(srclist1)):
listerror+=pow(srclist1[i]-srclist2[i],2)
return pow(listerror,0.5)
比较按行存的label的误差
例如可以比较这样的list中名称相同的训练样本的误差:

将黄色处生成dict的间隔改为3,则可以比较这样的list

import sys def list2dict(srclist,splen,datatype):# datatype: 0-str 1-int 2-float
dstdict={}
for i in range(0,int(len(srclist)/splen)):
dstdict[srclist[splen*i]]=[]
for j in range(1,splen):
if datatype==0:
dstdict[srclist[splen*i]].append(srclist[splen*i+j])
elif datatype==1:
dstdict[srclist[splen*i]].append(int(srclist[splen*i+j]))
elif datatype==2:
dstdict[srclist[splen*i]].append(float(srclist[splen*i+j]))
else:
print 'please choose the datatype'
return False
return dstdict def cal_list_dist(srclist1,srclist2):
if len(srclist1)!=len(srclist2):
print 'error in cal_list_dict, len not equal!'
return False
listerror=0
for i in range(0,len(srclist1)):
listerror+=pow(srclist1[i]-srclist2[i],2)
return pow(listerror,0.5) p_name=sys.argv[1] with open('./10_10_662_withcam0/'+p_name) as f:
withcam0_list=f.read().splitlines() with open('./10_10_662_nocam0/'+p_name) as f:
nocam0_list=f.read().splitlines() withcam0_dict=list2dict(withcam0_list,4,2) nocam0_dict=list2dict(nocam0_list,4,2) sumerror=0
sumcount=0
for elem in withcam0_dict:
if elem in nocam0_dict:
sumerror+=cal_list_dist(withcam0_dict[elem],nocam0_dict[elem])
sumcount+=1
print sumerror/sumcount
【python】常用函数的更多相关文章
- Python常用函数记录
Python常用函数/方法记录 一. Python的random模块: 导入模块: import random 1. random()方法: 如上如可知该函数返回一个[0,1)(左闭右开)的一个随机的 ...
- Python常用函数、方法、模块记录
常用函数: 1.pow():乘方 2.abs():绝对值 3.round():四舍五入 4.int():转换为整数 5.input():键盘输入(会根据用户的输入来做类型的转换) raw_input( ...
- python常用函数年初大总结
1.常用内置函数:(不用import就可以直接使用) help(obj) 在线帮助, obj可是任何类型 callable(obj) 查看一个obj是不是可以像函数一样调用 repr(obj) 得到o ...
- python常用函数总结
原文地址https://www.cnblogs.com/nice107/p/8118876.html 我们在学习python的时候,接触最多的往往则是那些函数,对于python函数,在这里为大家总结归 ...
- 超级干货,python常用函数大总结
我们在学习python的时候,接触最多的往往则是那些函数,对于python函数,在这里为大家总结归纳了这些,如果有缺漏,还请及时留言指正哦! 话不多说,干货来袭! 1.常用内置函数:(不用import ...
- python常用函数库收集。
学习过Python都知道python中有很多库.python本身就是万能胶水,众多强大的库/模块正是它的优势. 收集一些Python常用的函数库,方便大家选择要学习的库,也方便自己学习收集,熟悉运用好 ...
- python常用函数拾零
Python常用内置函数总结: 整理过程中参考了runoob网站中python内置函数的相关知识点,特此鸣谢!! 原文地址:http://www.runoob.com/python/python-bu ...
- python 常用函数集合
1.常用函数 round() : 四舍五入 参数1:要处理的小数 参数2:可选,如果不加,就是不要小数,如果加,就是保留几位小数 abs() :绝对值 ...
- Python | Python常用函数、方法示例总结(API)
目录 前言 1. 运算相关 2. Sring与数字 3. 列表相关 4. 集合相关 5. 序列化类型 6. 字典相关 7. 输入输出 8. 文件相关 9. json模块 10. unittest测试模 ...
- python常用函数及模块
原文来源于博客园和CSDN 1.计算函数 abs()--取绝对值 max()--取序列最大值,包括列表.元组 min()--取序列最小值 len()--取长度 divmod(a,b)---取a//b除 ...
随机推荐
- python操作word【简单封装】
#!/usr/bin/env python # -*- coding: utf-8 -*- import win32com.client import os #-------------------- ...
- PHP uxf framework 在模版中加入url标签
1. 确保不修改discuz代码: 2. 继承discuz template类,重载parse_template 方法:由于discuz在模版引擎这一块没有考虑扩展性,对标签的解析全部写在一个方法中, ...
- UCOS2系统内核讲述(二)_初始化调用函数
Ⅰ.写在前面 学习本文之前可以参看我前面的文章: UCOS2_STM32F1移植详细过程(汇总文章) UCOS2系统内核讲述(一)_总体描述 还是按照上一篇文章的思维(从外到内),本文(结合源代码)进 ...
- awk "sort -rnk3"
[root@Cobbler logs]# awk 'BEGIN{print "IP地址","访问流量","访问次数"}{a[$1]++;b[ ...
- php url配置项
- php ut8声明
header("Content-type: text/html; charset=utf-8");
- 使用PULL解析XML文件
转载博文1:http://blog.csdn.net/wangkuifeng0118/article/details/7313241 XmlPull和Sax类似,是基于流(stream)操作文件,然后 ...
- EJB类库存在于Java的哪个版本中?(选择1项)。
A. J2SE B. J2EE C. J2ME D. J2NE 解答:B
- 【BZOJ】1681: [Usaco2005 Mar]Checking an Alibi 不在场的证明(spfa)
http://www.lydsy.com/JudgeOnline/problem.php?id=1681 太裸了.. #include <cstdio> #include <cstr ...
- cpio -H newc参数详解
-H format 其中个format可以是: ‘bin’ The obsolete binary format. (2147483647 bytes) ‘odc’ The old (POSIX.1) ...