Python读取数据集并消除数据中的空行方法

 更新时间:2018年07月12日 10:26:15   作者:AlistarHu  
今天小编就为大家分享一篇Python读取数据集并消除数据中的空行方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

如下所示:

# -*- coding: utf-8 -*-
# @ author hulei 2016-5-3
from numpy import *
import operator
from os import listdir
 
import sys
reload(sys)
sys.setdefaultencoding('utf8')
 
# x,y=getDataSet_dz('iris.data.txt',4)
 
def getDataSet(filename,numberOfFeature):  #将数据集读入内存 
 fr = open(filename)
 numberOfLines = len(fr.readlines())   #get the number of lines in the file file.readlines()是把文件的全部内容读到内存,并解析成一个list
 returnMat = zeros((numberOfLines,numberOfFeature))  #prepare matrix to return 3代表数据集中特征数目###
 classLabelVector = []      #prepare labels return 
 fr = open(filename)
 index = 0
 for line in fr.readlines():
  line = line.strip()     #strip() 参数为空时,默认删除空白符(包括'\n', '\r', '\t', ' ')
  listFromLine = line.split(',')   #split 以什么为标准分割一次 分成数组中的每个元素
  returnMat[index,:] = listFromLine[0:numberOfFeature] 
  #classLabelVector.append(int(listFromLine[-1])) #append() 方法向列表的尾部添加一个新的元素
  if listFromLine[-1] == 'Iris-setosa' :
   classLabelVector.append(1)
  elif listFromLine[-1] == 'Iris-versicolor' :
   classLabelVector.append(2)
  else:
  #elif listFromLine[-1] == 'Iris-virginica' :
   classLabelVector.append(3)
  index += 1
 return returnMat,classLabelVector
 
def getDataSet_dz(filename,numberOfFeature): #改进版,可以消除数据中的空白行
 numberOfLines = 0
 mx = []  #将数据集 去除空行后存入
 fr = open(filename)
 for line in fr.readlines():  
  line = line.strip() 
  if line != '' : #去除空白行 
   numberOfLines+=1
   mx.append( line.split(',') )
 returnMat = zeros((numberOfLines,numberOfFeature))
 classLabelVector = [] 
 for index in range(numberOfLines) :
  returnMat[index,:] = mx[index][0:numberOfFeature] 
  if mx[index][-1] == 'Iris-setosa' :
   classLabelVector.append(1)
  elif mx[index][-1] == 'Iris-versicolor' :
   classLabelVector.append(2)
  else:
  #elif listFromLine[-1] == 'Iris-virginica' :
   classLabelVector.append(3)
 return returnMat,classLabelVector

以上这篇Python读取数据集并消除数据中的空行方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 解决pycharm remote deployment 配置的问题

    解决pycharm remote deployment 配置的问题

    今天小编就为大家分享一篇解决pycharm remote deployment 配置的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • 如何在Anaconda中打开python自带idle

    如何在Anaconda中打开python自带idle

    这篇文章主要介绍了如何在Anaconda中打开python自带idle,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • 10个Python办公自动化案例总结

    10个Python办公自动化案例总结

    Python作为一种简单而强大的编程语言,不仅在数据科学和软件开发领域广受欢迎,还在办公自动化方面发挥了巨大作用,通过Python,我们可以编写脚本来自动执行各种重复性任务,从而提高工作效率并减少错误,在本文中,我们总结了10个Python办公自动化案例
    2024-09-09
  • 对python3中, print横向输出的方法详解

    对python3中, print横向输出的方法详解

    今天小编就为大家分享一篇对python3中, print横向输出的方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • python编写图书管理系统

    python编写图书管理系统

    这篇文章主要为大家详细介绍了python编写图书管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • python保存字符串到文件的方法

    python保存字符串到文件的方法

    这篇文章主要介绍了python保存字符串到文件的方法,实例分析了Python文件与字符串操作的相关技巧,需要的朋友可以参考下
    2015-07-07
  • python时间日期操作方法实例小结

    python时间日期操作方法实例小结

    这篇文章主要介绍了python时间日期操作方法,结合实例形式总结分析了Python针对日期时间的转换、计算相关操作技巧,需要的朋友可以参考下
    2020-02-02
  • python 元组和列表的区别

    python 元组和列表的区别

    这篇文章主要介绍了python 元组和列表的区别,帮助大家更好的理解和学习python 数据类型的相关知识,感兴趣的朋友可以了解下
    2020-11-11
  • 如何使用Python优雅的合并两个字典Dict

    如何使用Python优雅的合并两个字典Dict

    字典是Python语言中唯一的映射类型,在我们日常工作中经常会遇到,下面这篇文章主要给大家介绍了关于如何使用Python优雅的合并两个字典Dict的相关资料,需要的朋友可以参考下
    2023-05-05
  • python pandas cumsum求累计次数的用法

    python pandas cumsum求累计次数的用法

    这篇文章主要介绍了python pandas cumsum求累计次数的用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07

最新评论