1. 机器学习实战 一书中第20页数据预处理,从文本中解析数据的程序。
  1. import numpy as np
  2. def dataPreProcessing(fileName):
  3. with open(fileName) as op:
  4. lines=op.readlines()
  5. # 返回值是list
  6. lineNumer=len(lines)
  7. # list长度即文件中的行数
  8. dataMatrix=np.zeros((lineNumer,3))
  9. # 初始化lineNumer行,3列的全0矩阵,注意双层括号
  10. labelVector=[]
  11. # 标记向量初始化,它在目前是一个空的list
  12. index=0
  13. # 索引,为了后面给数据矩阵和标记向量初始化用的
  14. for line in lines:
  15. line=line.strip()
  16. # 去空格
  17. temp=line.split('\t')
  18. # 按换行符分割数据,返回list
  19. dataMatrix[index,:]=temp[0:3]
  20. # 切片操作,dataMatrix[a,b:c]后的方括号中第一个值表示矩阵行号(从0开始)
  21. # 第二、三个参数代表从b开始,c结束,前开后闭,包含b不包含c的元素
  22. # temp中的两个参数同理
  23. # 将temp中的前3个值赋给dataMatrix
  24. labelVector.append(int(temp[-1]))
  25. # 将temp中的最后一个值赋给labelVector,注意强转类型,不强转取到的类型为string
  26. index=index+1
  27. return dataMatrix,labelVector
  28. # arr=np.array([[0,1,2],[3,4,5],[6,7,8]])
  29. # print(arr[2,:])
  30. fileName='./datingTestSet2.txt'
  31. # “/”:表示根目录,在windows系统下表示某个盘的根目录,如“E:\”;
  32. # “./”:表示当前目录;(表示当前目录时,也可以去掉“./”,直接写文件名或者下级目录)
  33. # “../”:表示上级目录。
  34. a,b=dataPreProcessing(fileName)
  35. print(a,b)
  1.  
  2. 附:今晚很郁闷,pycharm启动慢得要死,Numpy又用不了,好不容易才用清华镜像把numpy升级到可用状态,期间pycharm卡死了好几次,ukylin的虚拟机更卡,气得我想把电脑砸了,以后有替代的ide了再也不用pycharm
  3.  
  4. ---------------------------------------------------------------------------------------
    2020-02-15更新
    读取txt文件中的数据
  1. testArray=genfromtxt(fileName,delimiter="\t",dtype=str)
  2. # 文件名、分隔符、读取的数据以什么类型返回
  3. # print('testArray=\n',testArray)
  4. # print(testArray.shape)
  5. # print(testArray.dtype)
  6. testLabels=testArray[:,3]
  7. testLabels=testLabels.astype(int)
  8. # 矩阵切片,取出所有行第3列,其中:表示所有行
  9. print('testLabels\n',testLabels)
  10. print(testLabels.shape)
  11. testInfo=testArray[:,0:3]
  12. # 读取每一行的前3列,这里的0:3是左闭右开区间
  13. testInfo=testInfo.astype(float)
  14. print('testInfo:\n',testInfo)

  今晚又重温了 “唐宇迪\1章Python科学计算库—numpy”课程系列中的 05-07三节内容,其中《课时07.Numpy矩阵基础》只看到了3'12''

python数据预处理for knn的更多相关文章

  1. Python数据预处理:机器学习、人工智能通用技术(1)

    Python数据预处理:机器学习.人工智能通用技术 白宁超  2018年12月24日17:28:26 摘要:大数据技术与我们日常生活越来越紧密,要做大数据,首要解决数据问题.原始数据存在大量不完整.不 ...

  2. python data analysis | python数据预处理(基于scikit-learn模块)

    原文:http://www.jianshu.com/p/94516a58314d Dataset transformations| 数据转换 Combining estimators|组合学习器 Fe ...

  3. Python数据预处理—归一化,标准化,正则化

    关于数据预处理的几个概念 归一化 (Normalization): 属性缩放到一个指定的最大和最小值(通常是1-0)之间,这可以通过preprocessing.MinMaxScaler类实现. 常用的 ...

  4. Python数据预处理之清及

    使用Pandas进行数据预处理 数据清洗中不是每一步都是必须的,按实际需求操作. 内容目录 1.数据的生成与导入 2.数据信息查看 2.1.查看整体数据信息 2.2.查看数据维度.列名称.数据格式 2 ...

  5. Python数据预处理(sklearn.preprocessing)—归一化(MinMaxScaler),标准化(StandardScaler),正则化(Normalizer, normalize)

      关于数据预处理的几个概念 归一化 (Normalization): 属性缩放到一个指定的最大和最小值(通常是1-0)之间,这可以通过preprocessing.MinMaxScaler类实现. 常 ...

  6. python数据预处理和特性选择后列的映射

    我们在用python进行机器学习建模时,首先需要对数据进行预处理然后进行特征工程,在这些过程中,数据的格式可能会发生变化,前几天我遇到过的问题就是: 对数据进行标准化.归一化.方差过滤的时候数据都从D ...

  7. Python数据预处理:使用Dask和Numba并行化加速

    如果你善于使用Pandas变换数据.创建特征以及清洗数据等,那么你就能够轻松地使用Dask和Numba并行加速你的工作.单纯从速度上比较,Dask完胜Python,而Numba打败Dask,那么Num ...

  8. Python数据预处理—训练集和测试集数据划分

    使用sklearn中的函数可以很方便的将数据划分为trainset 和 testset 该函数为sklearn.cross_validation.train_test_split,用法如下: > ...

  9. 关系网络数据可视化:2. Python数据预处理

    将数据中导演与演员的关系整理出来,得到导演与演员的关系数据,并统计合作次数 import numpy as np import pandas as pd import matplotlib.pyplo ...

随机推荐

  1. oracle问题:char类型数据查询不到

    select distinct id,name from test_table b where b.ID='001' ; id为char字段类型,使用该语句查询不出数据. 解决方法:加trim().改 ...

  2. MongoDB七-运维技术

    复制来自:http://www.cnblogs.com/huangxincheng/archive/2012/03/08/2384571.html 这一篇我们以管理员的视角来看mongodb,作为一名 ...

  3. 一、VIP课程:互联网工程专题 03-Maven基本概念与核心配置

    概要: maven 基本概念 maven 核心配置 一.maven  安装与核心概念 概要: maven 安装 maven 编译(compile) 执行测试用例(test) maven 打包 mave ...

  4. idea自定义快捷鍵

    一  生成方法注释 1. File -> Settings... 2. Editor -> Live Templates,点击最右边的+ 3. 依自己情况选择,我这里选择的 Live Te ...

  5. CV_图像滤波[转]---python+opencv均值滤波,高斯滤波,中值滤波,双边滤波

    1.图像滤波算法(cv2) https://blog.csdn.net/qq_27261889/article/details/80822270 2.

  6. POJ 2346:Lucky tickets

    Lucky tickets Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 3247   Accepted: 2136 Des ...

  7. 关于Promise的异步依次函数调用

    在Promise中async用于定义一个异步函数(可不写),该函数返回一个Promise. 如果async函数返回的是一个同步的值,这个值将被包装成一个理解resolve的Promise, 等同于re ...

  8. 【STM32H7教程】第50章 STM32H7的LCD控制器LTDC基础知识和HAL库API

    完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第50章       STM32H7的LCD控制器LTDC基础 ...

  9. hibernate.QueryException: Legacy-style query parameters (`?`) are no longer supported

    传统样式查询参数(`?`)不再支持:使用JPA样式的序号参数(例如,`?1’) hibernate4.1之后已经对HQL查询参数中的占位符做了改进: 更改代码:

  10. qt 字符串 转换 hex

    1. qt 中两个字符的字符串直接转换为 hex,类似于 "1A" 要转换成 16进制的 0x1A,使用 int QString::toInt(bool *ok, int base ...