python常识

str.strip([char] )//去掉首尾的字符

str.split(str,num)//按照什么把字符串划分

mat.transpose()//转置

from numpy import *//之后用numpy里的东西不用加numpy.

ones((m,n))//构建m行n列的元素全是1的列表

列表相加只是列表的集合里面的元素变多了

要使对应位置相加必须至少把其中一个转化成mat

只有形状对应的矩阵才能相乘,比如说【1,2,3】*mat([4,5,6]).transpose()

int(str)是错的,改成int(float(str))

 print("the error rate of this test is: %f" % errorrate)输出函数没有逗号

list(range(6))=[0,1,2,3,4,5]

del(list[index])删除列表中某一元素

for k in range(n)//循环

import random

random.uniform(x,y)在[x,y)之间随机取一个数

import os

print(os.path.getcwd())//获取当前目录

print(os.path.abspath('.'))//获取当前目录

print(os.path.abspath('..'))//获取父目录

print(os.path.abspath(os.curdir))//获取当前目录

//注意python里面如果函数的()相当于创建一个对象

#彻底理解python的切片

str.insert(ind,value)在ind元素前面插入value
首先对ind进行预处理:如果ind<0,则ind+=len(a),这样一来ind就变成了正数下标
预处理之后,
当ind<0时,ind=0,相当于头部插入
当ind>len(a)时,ind=len(a),相当于尾部插入

str[beg:end:delta]

beg 一定能取到

end是最后一个数的后一位

列表的下标有三个参数:beg(起始下标),end(终止下标),delta(变化量)
当delta小于0时,beg默认为len(array)-1,end默认为开头之前。
当delta大于0时,beg默认为0,end默认为最末之后。
当delta未给出时:delta默认为1

%load_ext autoreload
在执行用户代码前,重新装入 软件的扩展和模块。
autoreload 意思是自动重新装入。
它后面可带参数。参数意思你要查你自己的版本帮助文件。一般说:
无参:装入所有模块。
0:不执行 装入命令。
1: 只装入所有 %aimport 要装模块
2:装入所有 %aimport 不包含的模块。
numpy.random.choice(a, size=None, replace=True, p=None)
replace为False生成的随机数不能有重复
使用%matplotlib命令可以将matplotlib的图表直接嵌入到Notebook之中,或者使用指定的界面库显示图表,它有一个参数指定matplotlib图表的显示方式。inline表示将图表嵌入到Notebook中

用python作图
def plotBestFit(weights):
    import matplotlib.pyplot as plt
    datamat,labelmat=loadDataset()
    dataarr=array(datamat)#注意转换为array
    xcord1=[];xcord2=[]
    ycord1=[];ycord2=[]
    n=shape(dataarr)[0]
    for i in range(n):
        if labelmat[i]==1:
            xcord1.append(dataarr[i,0])#只有array能这么用
            ycord1.append(dataarr[i,1])
        else:
            xcord2.append(dataarr[i,0])
            ycord2.append(dataarr[i,1])
    fig=plt.figure()#作图的关键步骤
    ax=fig.add_subplot(111)#作图的关键步骤
    ax.scatter(xcord1,ycord1,s=30,c='red',marker='s')#画散点图用scatter
    ax.scatter(xcord2,ycord2,s=30,c='green')
    x=arange(0,10,0.1)#画连续的直线关键步骤,确定x轴的范围和步长
    y=(-weights[0]-weights[1]*x)/weights[2]
    ax.plot(x,y)#画直线用plot
    plt.xlabel('x1')
    plt.ylabel('x2')
    plt.show()#显示
    
   weights=gradascend()
plotBestFit(weights.getA())
 weights.getA()的意思是把matrix类型的weights转化为array 型,相当于array(weights).这里不能用矩阵,因为矩阵的运算规则和数组不一样  


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值