这里机器学习采用的是python2.7.13版本,安装了numpy库,和matplotlib库。
入门工作主要分为三部分:
一、python基础语法
推荐几个学习基础语法的网站
http://lib.csdn.net/base/11
http://www.cnblogs.com/moomu/archive/2011/11/11/2245928.html
http://www.runoob.com/python/python-basic-syntax.html
作者这里只是按照《python数据分析与挖掘实战》中的python使用入门简单学习了基础的语法。
'''
python 基本命令
'''
print("hello world!")
print(1+2)
a=2
#幂次计算
print(a ** 3)
#for 循环 1+2+3..+100
s = 0
for k in range(101):
s=s+k
print(s)
#while循环
s = 0
k = 0
while k<101:
k=k+1
s=s+k
print(s)
#if 条件
s=0
if s in range(4):
print('不在')
if s not in range(4):
print('在')
#def 定义函数
def add2(x=2,y=0):
return x+2,y+2
print(add2())
#lambda 行内函数
x=y=2
f= lambda x:x+2
g= lambda x,y:x+y
print(f(x),g(x,y))
#列表
aa=[1,2,3]
bb=[]
cc=[i+2 for i in aa]
for i in aa:
bb.append(i+2)#a.append(1)把1 添加到列表a的末尾
print(bb,cc)
print(bb.count(3))#统计列表中a中元素3出现的次数
#字典,自编下标
d={'I':20,'YOU':30}
print(d['I'],d['YOU'])
print(dict([['today',20],['tomorrow',30]]))
#集合 元素不重复 无序,不支持索引
s={1,2,2,3}#自动去重复
print(s)
t= set([1,2,2,3,3,4,5])#将列表转化为集合
print(t,min(s),max(s),sum(s),sorted(s),len(s))
#len()集合的基数,sorted(s),对其中的元素进行排序
print(t|s,t&s,t-s,t^s)#并,交,差,对称差集(项在t或s中,但不同时出现)
二、Numpy库的使用
这里介绍本书:《Python数据分析基础教程:Numpy学习指南(第2版)》此书介绍的较为详细。
作者这里只是简略的学习了一下
'''
numpy的基本操作
'''
#0,1,2的平方和立方分别相加
def numpysum(n):
a = ny.arange(n) ** 2
b = ny.arange(n) ** 3
c = a + b
return c
print(numpysum(3))
a=ny.array([2,0,1,5])#创建数组
print(a)
print(a[:3])#引用前三个数字(切片)
print(a.min())
a.sort()#直接修改a,将a的元素从小到大排序
print(a)
b=ny.array([[1,2,3],[4,5,6]])#创建二维数组
print(b*b)#输出数组的平方阵
三、Matplotlib库的使用
Matplotlib库使用较为全面介绍的一个指导网站
http://old.sebug.net/paper/books/scipydoc/matplotlib_intro.html
Matplotlib库一般是不允许输出中文的,为了拾起能够在图标中输出汉字,我们需要修改一些文件。
找到配置文件matplotlibrc。可以用everything搜索这个文件。例如我的在D:\Program Files (x86)\python\Lib\site-packages\matplotlib\mpl-data\matplotlibrc路径下。
用文本编辑器打开matplotlibrc文件。
找到font.family一行,将前面的注释号去掉。
找到font.sans-serif一行,将前面的注释号去掉。
在font.sanc-serif后面的值中添加一个中文字体名。我添加的是Microsoft YaHei(微软雅黑),添加后如下:
font.sans-serif : Microsoft YaHei,, Bitstream Vera Sans, Lucida Grande, Verdana, Geneva, Lucid, Arial, Helvetica, Avant Garde, sans-serif
或者是在代码中加入
from pylab import *
mpl.rcParams['font.sans-serif'] = ['SimHei']
之后,需要加一个u即可例如:xlabel(u"text for x轴")
'''
Matplotlib作图
'''
x=ny.linspace(0,10,1000)#作图的变量自变量
y=ny.sin(x)+1#因变量y
z=ny.cos(x**2)+1#因变量z
plt.figure(figsize=(8,4))#设置图像大小
plt.plot(x,y,label='$\sin x+1 $',color='red',linewidth=2)#作图,设置标签,线条颜色,线条大小
plt.plot(x,z,'b--',label='$\cosx^2+1$')#作图,设置标签、线条类型
plt.xlabel('Time(s) ')#x轴名称
plt.ylabel('Volt')#y轴名称
plt.title('A Simple Example')#标题
plt.ylim(0,2.2)#显示的y轴范围
plt.legend()#显示图例
plt.show()#显示作图结果
网友评论