美文网首页
实例 数据操作

实例 数据操作

作者: 六六的建斌 | 来源:发表于2017-07-18 23:13 被阅读0次

    在所有的自带数据里面,统一的套路都是

    from sklearn.datasets import *   引模块

    x=shasha()                                   初始化数据集,就是拿到数据

    print(x.keys())                              查看数据包含哪些东西,看到之后就可以操作了


    在了解相关的数据之后,可以查看自己想要的东西,但这里面的数据一般都是可以直接用于模型训练的,所以就

    然后就是对数据进行训练了

       from sklearn.cross_validation import train_test_split

       X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)

      clf = KNeighbors Classifier(n_neighbors=3).fit(X_train, y_train)

      print("Test set accuracy: {:.2f}".format(clf.score(X_test, y_test)))


    这好像是一篇关于胸问题的数据,

    dict_keys(['feature_names', 'data', 'DESCR', 'target', 'target_names'])



    上面的语句写法值得学习,x={n:v for n ,v in zip(cancer.target_names,np.bincount(cancer.target)) }

    计算每个特征值的个数,并且以字典的形式输出,反正我是想不到这一层,当然了,毕竟我只是刚学,见到的世面太少了。


    自带数据的引用方式都一样,都是套路

    虽然不太懂,勉强解释一下,第一句,花三幅图并确定图的大小,k临近取不同的参数对数据进行训练得到分层图,然后在分层图上用数据的第一,二个特征为x轴,特征为y轴画出散点图,最后一句说的是在第一个图上画出图标,


    对于模型不同参数的可视化结果,可以看出参数取几的时候模型既不过度拟合,又有较高的得分,代码可行,stratify是为了保持split前类的分布。比如有100个数据,80个属于A类,20个属于B类。如果train_test_split(... test_size=0.25, stratify = y_all), 那么split之后数据如下:

    training: 75个数据,其中60个属于A类,15个属于B类。

    testing: 25个数据,其中20个属于A类,5个属于B类。

    用了stratify参数,training集和testing集的类的比例是 A:B= 4:1,等同于split前的比例(80:20)。通常在这种类分布不平衡的情况下会用到stratify


    忽略mglearn因为我的电脑上导不出这个模块,注意.reshape(-1,1)意思就是将原数组重新安排为新的数组,这的-1表示根据列得到的行数,意思是我只需要多少列就写多少列,至于有多少行,反正就俩个参数,知其一,另外一个就让电脑算。


    线性模型:套路都是一样的套路


    岭回归

    ridge10 = Ridge(alpha=10).fit(X_train, y_train)  alpha是啥鬼东西



    有对数据的说明


    alpha 和迭代次数的不同影响数据的预测结果得分

    不同的模型对数据的预测

    logreg = Logistic Regression().fit(X_train, y_train)

    logreg = Logistic Regression()

    y_pred = logreg.fit(X_train, y_train).predict(X_test)

    Naive Bayes C assifiers     快


    相关文章

      网友评论

          本文标题:实例 数据操作

          本文链接:https://www.haomeiwen.com/subject/ohdhkxtx.html