读取数据可以方便我们的工作,python中常见的数据读取方式有很多,那么python如何读取数据呢?
利用pandas中的read_csv模块直接将数据读取出来。(推荐学习:Python视频教程)
data = pd.read_csv('/home/nw/Desktop/dataset/iris.txt',header = None)
上面的代码,read_csv中前面的是数据集存放的路径,后面的header很重要,经常以为少了header,数据的总量减小了1,因为少掉的那一行数据变成了DataFrame里面的列索引。
还有一种是比较传统的方法,直接用open打开文件,把文件里面的信息先取出来,不管取出来是什么样子的,先取出来再说,想要作什么处理直接对取出的变量做处理即可。
f= open('/home/nw/Desktop/dataset/iris.txt','rb') dataset = pickle.load(f) #这种方法适用于自己存取自己的数据,有时候在读取别人的数据的时候是不行的,因为别人存数据的方式不一定是用pickle.dump的方 ##式存数据的。 f = open('/home/nw/Desktop/dataset/iris.txt') ''' 注意这里的open后面最好不要加上其他的读取方式,不需要‘rb’之类的读取方式。因为在后续的数据处理中可能还需要将二进制的数 据转换成自己想要的个数。 ''' lines = f.readlines() ''' 现在lines中已经包含了所有的数据信息,我们想要得到的数据格式都可以基于lines做处理。如我读出的iris数据格式是一个列表的形 式,使用len(lines)得到列表中元素的个数是151,打印出lines,可以看到lines中每个元素都是一个字符串,并且每个字符串后面都 有'\n'的换行字符,最后一行是空行,所以最后一行是多余,并且要去掉每行中的'\n' ''' arr = [] for i in range(len(lines)): if lines[i] != '\n': arr.append(lines[i]) for i in range(len(arr)): arr[i] = arr[i].strip('\n')#将每行的'\n'脱去
更多Python相关技术文章,请访问Python教程栏目进行学习!
以上是python怎么读取数据的详细内容。更多信息请关注PHP中文网其他相关文章!