我需要使用NumPy(并且仅使用NumPy,而不是Pandas或SkLearn等)来读取CSV文件。CSV文件包含的元素如下所示:
PassengerId,Survived,Pclass,Name,Sex,Age,SibSp,Parch,Ticket,Fare,Cabin,Embarked
1,0,3,"Braund, Mr. Owen Harris",male,22,1,0,A/5 21171,7.25,,S
2,1,1,"Cumings, Mrs. John Bradley (Florence Briggs Thayer)",female,38,1,0,PC 17599,71.2833,C85,C
3,1,3,"Heikkinen, Miss. Laina",female,26,0,0,STON/O2. 3101282,7.925,,S
4,1,1,"Futrelle, Mrs. Jacques Heath (Lily May Peel)",female,35,1,0,113803,53.1,C123,S
我正在读取和打印数据,如下所示:
dataset = np.genfromtxt(dataset_path, delimiter=',', names=True, skip_header=1)
print(titanic_dataset)
正在读取文件,但是在查看输出时,缺少字符串信息(显示为nan
:
[( 2., 1., 1., nan, nan, nan, 38. , 1., 0., nan, 71.2833, nan, nan)
( 3., 1., 3., nan, nan, nan, 26. , 0., 0., nan, 7.925 , nan, nan)
( 4., 1., 1., nan, nan, nan, 35. , 1., 0., 1.138030e+05, 53.1 , nan, nan)
( 5., 0., 3., nan, nan, nan, 35. , 0., 0., 3.734500e+05, 8.05 , nan, nan)
( 6., 0., 3., nan, nan, nan, nan, 0., 0., 3.308770e+05, 8.4583, nan, nan)]
如何读取此csv文件,同时保持逗号作为定界符并读取字符串值?
对于一致的列数和混合数据类型,请使用:
import numpy as np
np.genfromtxt('filename', dtype= None, delimiter=",")
dtype = none
导致退役。因此要访问该字段,您必须使用属性。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句