python 读取.csv文件数据到数组(矩阵)的实例讲解

yipeiwu_com5年前Python基础

利用numpy库

(缺点:有缺失值就无法读取)

读:

import numpy 
my_matrix = numpy.loadtxt(open("1.csv","rb"),delimiter=",",skiprows=0) 

写:

numpy.savetxt('2.csv', my_matrix, delimiter = ',')

可能遇到的问题:

SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position

原因是文件路径名中含有转义字符,将路径中的\换成\即可。

利用pandas库

读:(可以处理缺失值)

>>> import pandas as pd
>>> df = pd.read_csv('D:\Python\\l\B_train1.csv')
>>> df.values
>>> df.as_matrix(columns=None)

写:(将dataFrame直接写入)

>>> testB = test[test.intersection_id.isin(["B"])]
>>> pd.DataFrame.to_csv(testB,"D:\Python\\k\\t5B.csv")
#testB是个dataFrame

利用sklearn包中的Imputer处理缺失值

>>> m = df.as_matrix(columns=None)
>>> from sklearn.preprocessing import Imputer
>>> imp = Imputer(missing_values='NaN', strategy='mean', axis=0)
>>> imp.fit(m)
Imputer(axis=0, copy=True, missing_values='NaN', strategy='mean', verbose=0)
>>> imp.transform(m)

以上这篇python 读取.csv文件数据到数组(矩阵)的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python超时重新请求解决方案

在应用中,有时候会 依赖第三方模块执行方法,比如调用某模块的上传下载,数据库查询等操作的时候,如果出现网络问题或其他问题,可能有超时重新请求的情况; 目前的解决方案有 1. 信号量,但不...

python中的逆序遍历实例

如果你需要遍历数字序列,可以使用内置range()函数。它会生成数列。 range()语法: range(start,end,step=1):顾头不顾尾 正序遍历: range(10):...

浅析Python3 pip换源问题

pip安装源 背景# 在实际开发中, 可能要大量使用第三方模块(包), 更换至国内下载源, 可大幅提升下载速度 """ 1、采用国内源,加速下载模块的速度 2、常用pip源:...

NumPy排序的实现

numpy.sort()函数 该函数提供了多种排序功能,支持归并排序,堆排序,快速排序等多种排序算法 使用numpy.sort()方法的格式为: numpy.sort(a,axis,k...

Python实现多进程共享数据的方法分析

本文实例讲述了Python实现多进程共享数据的方法。分享给大家供大家参考,具体如下: 示例一: # -*- coding:utf-8 -*- from multiprocessing...