LAMBDA

在python里习惯把短的函数写成lambda算子, 常常为了把一些小函数写成只有一行的lambda算子而费劲脑汁, 下面收藏几个之前写程序想到的lambda算子.(陆续补充中)

在手写数字识别训练算法时用到的, 如: 1->[0,1,0,0,0,0,0,0,0,0], 即把label(0-9)映射为一个label向量.

labelVector = lambda x: [i==x and 1 or 0 for i in range(10)]

统计一个二维list中所有元素的个数, 如: [[1,2,3],[2,3,4,5],[6,7,8,9,0]], 将返回10

getPixels = lambda x: sum([len(i) for i in x])

统计两个维度相同的list中的相同元素的个数, 在分类算法中用来计算分类的正确率, guesses是预测的类标集合, labels是实际的类标集合.

[guesses[i]==labels[i] for i in range(len(guesses))].count(True)

使用numpy科学计算包做PCA降维时用到的, linalg.eig求得矩阵的特征值和特征向量, 其中特征值和特征向量是一一对应的, 但是与matlab的特征值函数不同的是, linalg.eig求得的特征值是未排序的, 所以:

  1. 还没有评论。
  1. No trackbacks yet.

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Connecting to %s

加关注

Get every new post delivered to your Inbox.