python机器学习常用语法
来源:互联网 发布:手机网络电话软件排名 编辑:程序博客网 时间:2024/05/22 10:45
1. python内建函数map(),reduce(),filter()
内建函数可以直接通过help()在控制台查询,比如help(map)。模块下的函数,比如math模块下的sin()函数,要在控制台查询,需要import math,help(math.sin)。
(1) map()
map()
函数接收两个参数,一个是函数,一个是Iterable
,map
将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator
返回。
举例说明,比如我们有一个函数f(x)=x2,要把这个函数作用在一个list[1, 2, 3, 4, 5, 6, 7, 8, 9]
上,就可以用map()
实现如下:
>>> def f(x):... return x * x...>>> r = map(f, [1, 2, 3, 4, 5, 6, 7, 8, 9])>>> list(r)[1, 4, 9, 16, 25, 36, 49, 64, 81]
map函数主要作用于要对一个list做同样的操作,返回一个操作后的序列。比如从文件中读取一行数据,并转化成float()类型如下:f = file(path)
x = []
y = []
for i, d in enumerate(f): #i代表编号,d代表第i行的值
if i == 0:
continue
d = d.strip()
if not d:
continue
d = map(float, d.split(','))
x.append(d[1:-1])
y.append(d[-1])
(2) reduce()
再看reduce
的用法。reduce
把一个函数作用在一个序列[x1, x2, x3, ...]
上,这个函数必须接收两个参数,reduce
把结果继续和序列的下一个元素做累积计算,其效果就是:
reduce(f, [x1, x2, x3, x4]) = f(f(f(x1, x2), x3), x4)
比方说对一个序列求和,就可以用reduce
实现:>>> from functools import reduce>>> def add(x, y):... return x + y...>>> reduce(add, [1, 3, 5, 7, 9])25
当然求和运算可以直接用Python内建函数sum()
,没必要动用reduce
。
但是如果要把序列[1, 3, 5, 7, 9]
变换成整数13579
,reduce
就可以派上用场:
(3)filter()
Python内建的filter()
函数用于过滤序列。
和map()
类似,filter()
也接收一个函数和一个序列。和map()
不同的是,filter()
把传入的函数依次作用于每个元素,然后根据返回值是True
还是False
决定保留还是丢弃该元素。
例如,在一个list中,删掉偶数,只保留奇数,可以这么写:
def is_odd(n): return n % 2 == 1list(filter(is_odd, [1, 2, 4, 5, 6, 9, 10, 15]))
(4)sorted()Python内置的sorted()
函数就可以对list进行排序:
>>> sorted([36, 5, -12, 9, -21])[-21, -12, 5, 9, 36]
此外,sorted()
函数也是一个高阶函数,它还可以接收一个key
函数来实现自定义的排序,例如按绝对值大小排序:
>>> sorted([36, 5, -12, 9, -21], key=abs)[5, 9, -12, -21, 36]
要进行反向排序,不必改动key函数,可以传入第三个参数reverse=True
:
>>> sorted(['bob', 'about', 'Zoo', 'Credit'], key=str.lower, reverse=True)['Zoo', 'Credit', 'bob', 'about']
- python机器学习常用语法
- Python与机器学习前言——Python常用语法
- 机器学习-->python常用知识点
- Python机器学习常用模块
- python机器学习基础语法入门
- [机器学习篇]基于Python机器学习常用库
- [机器学习篇]基于Python机器学习常用库
- Python常用机器学习扩展包
- Python常用的机器学习库
- 机器学习常用python函数解析
- 机器学习-->python常用可视化技巧
- 机器学习常用的Python库
- 机器学习之常用Python库
- 机器学习的常用算法,python实现
- python机器学习常用的几个库
- 机器学习常用python语句总结
- Python常用语法(学习更新中...)
- 机器学习学习笔记 4、Python及其基本语法
- random_shuffle()
- Socket 详解 总结
- ImageLoder工具类
- 五个阶段,了解产品设计流程
- Java语法学习1
- python机器学习常用语法
- Redis源码剖析--字典dict
- Python中排序常用到的sort 、sorted和argsort函数
- oracle正确卸载步骤
- 一个友元类使用误区(C++)
- 微信小程序开发例子-录音和播放声音
- Redis源码剖析--跳跃表zskiplist
- ScrollView滑动到底部继续向上滑和滑动到顶部继续向下滑
- Redis源码剖析--基数统计hyperloglog