我想从带有NumPy函数.csv
的{{1}}文件加载dataset (link to external page)。数据集包含浮点数。但是,列有标题并且缺少数据(由'?'实现)。
我该如何处理这些问题?
答案 0 :(得分:0)
根据您在评论中链接的数据集,您可以使用np.genfromtxt
来指定哪些值被视为缺失('?'
)以及要跳过多少行,因为它是& #34;头" (1
):
>>> import numpy as np
>>> np.genfromtxt(filename, delimiter=',', missing_values=['?'], skip_header=1)
array([[ 18., 4., 15., ..., 0., 0., 0.],
[ 15., 1., 14., ..., 0., 0., 0.],
[ 34., 1., nan, ..., 0., 0., 0.],
...,
[ 25., 2., 17., ..., 0., 1., 0.],
[ 33., 2., 24., ..., 0., 0., 0.],
[ 29., 2., 20., ..., 0., 0., 0.]])
但也许更适合这类任务的是pandas.read_csv
:
>>> import pandas as pd
>>> pd.read_csv(filename, na_values='?')
Age Number of partners First intercourse ...
0 18 4.0 15.0
1 15 1.0 14.0
2 34 1.0 NaN
3 52 5.0 16.0
4 46 3.0 21.0
5 42 3.0 23.0
6 51 3.0 17.0
7 26 1.0 26.0
8 45 1.0 20.0
9 44 3.0 15.0
10 44 3.0 26.0
11 27 1.0 17.0
12 45 4.0 14.0
13 44 2.0 25.0
14 43 2.0 18.0
...