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

(编辑:jimmy 日期: 2026/1/8 浏览:2)

利用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文件数据到数组(矩阵)的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

一句话新闻
高通与谷歌联手!首款骁龙PC优化Chrome浏览器发布
高通和谷歌日前宣布,推出首次面向搭载骁龙的Windows PC的优化版Chrome浏览器。
在对骁龙X Elite参考设计的初步测试中,全新的Chrome浏览器在Speedometer 2.1基准测试中实现了显著的性能提升。
预计在2024年年中之前,搭载骁龙X Elite计算平台的PC将面世。该浏览器的提前问世,有助于骁龙PC问世就获得满血表现。
谷歌高级副总裁Hiroshi Lockheimer表示,此次与高通的合作将有助于确保Chrome用户在当前ARM兼容的PC上获得最佳的浏览体验。