LIBTwinSvm代码解读中遇到的问题(一)

利用python -m pydoc命令查看第三方库说明文档

python提供了一个查看本地第三方库文档的方法。通过python -m pydoc命令来启动一个本地的web服务,然后就可以通过浏览器来查看python第三方库的说明文档。
具体操作步骤:

【1】打开cmd,输入python -m pydoc 会有该命令的帮助信息显示。
【2】多加一个-p 0参数,则可以随机挑选一个未被使用的端口来作为http服务的端口号。并且会打印出访问的网址。
【3】复制这个网址到浏览器地址栏,打开就是python第三方库的文档列表,可以在此页面中查找要查看的库的相关文档。或者手动输入:b 直接跳转
在这里插入图片描述
在这里插入图片描述

首先解读preprocess.py预处理模块

在这里插入图片描述

在这里插入图片描述

模块功能:此模块用于定义读取和处理数据集的功能
主要函数:

class DataReader():处理读取和处理数据集的功能。
Methods defined here:
(1) def __init__(self, file_path, sep, header): Initialize self.

file_path : str
        Path to the dataset file.

sep : str
        Separator character

header : boolean
        whether the dataset has header names or not.

(2)def load_data(self, shuffle, normalize): It reads a CSV file into pandas DataFrame.

 shuffle : boolean
        Whether to shuffle the dataset or not.

 normalize : boolean
        Whether to normalize the dataset or not.

(3) def get_data(self): It returns processed dataset.
return : load_data()处理后的X_train,y_train, filename

X_train:  Training samples in NumPy array
y_train:  Class labels of training samples.
filename:  The dataset's filename

(4) def get_data_info(self): It returns data characteristics from dataset.
返回: DataInfo(self.X_train.shape[0], self.X_train.shape[1],
unq_cls_lables.size, unq_cls_lables, self.hdr_names)

X_train.shape[0]:X_train的第一纬度大小
X_train.shape[1]:X_train的第二纬度大小
unq_cls_lables.size:标签类别个数数
unq_cls_lables:(不重复的:+1-1)标签类别
self.hdr_names:去除类标签的列名称(变量名X1,X2,···)

参见知识点:

1. os.path.split():按照路径将文件名和路径分割开,返回分割后的字符串列表

os.path.split(‘PATH’)
1.PATH指一个文件的全路径作为参数:
2.如果给出的是一个目录和文件名,则输出路径和文件名
3.如果给出的是一个目录名,则输出路径和为空文件名

import os
#os.path.split()返回文件的路径和文件名
fname,fename=os.path.split("E:/hhhh/ex19.py")

2.os.path.splitext()将文件名和扩展名分开

fname,fename=os.path.splitext('split_function.py')

3.DataFrame.mean() 函数和DataFrame.std()函数

df.mean()等价于df.mean(0),得到每列数据的平均值,df.mean(1)得到每行数据的平均值。
df.std()等价于df.std(0),得到每列数据的标准差,df.std(1)得到每行数据的标准差。

4.numpy中std()和pandas中std()的区别
默认标准差类型在 numpy 的 std() 和 pandas 的 std() 函数之间是不同的。默认情况下,numpy 计算的是总体标准偏差,ddof = 0。另一方面,pandas 计算的是样本标准偏差,ddof = 1。总体标准差公式除以 n,样本标准差公式除以 (n-1)。要想正常总体pandas的std,需要建ddof设置为0即可

import pandas as pd
import numpy as np
df = pd.DataFrame([[1,2,3,4,5,6])
print(df)
print(df.std())
print(df.std(ddof=0))

pandas的ddof默认为1;

5.python shape()函数
shape():读取矩阵长度,如shape[0]是读取矩阵第一维的长度,shape[1]是读取矩阵第二维的长度。
直接用shape()可快速读取矩阵的形状,shape[0]读取矩阵第一维的长度。但某维度长度不一致时,读取所有维度时则不能读出长短不一致的维度

需要完整代码或书籍PDF版的小伙伴可关注微信公众号:菜田里守望者
在这里插入图片描述
打开微信扫一扫关注吧,你们的支持就是我的动力

参考文献:
[1]https://github.com/mir-am/LIBTwinSVM/tree/master/libtsvm
[2]https://blog.csdn.net/sinat_28576553/article/details/89047893#1.%20Numpy.array()%E8%AF%A6%E8%A7%A3
[3]https://www.runoob.com/python/python-func-isinstance.html
[4]https://www.cnblogs.com/xieshengsen/p/6836430.html
[5]https://www.runoob.com/numpy/numpy-linear-algebra.html
[6]https://docs.scipy.org/doc/numpy-1.15.0/reference/generated/numpy.reshape.html?highlight=reshape
[7]https://blog.csdn.net/qq_28618765/article/details/78083895

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值