这是来自大型csv文件的示例:
6.1;6.1;7.2;8.9;5.0;
8.9;10.0;8.9;6.1;5.0;
Run Code Online (Sandbox Code Playgroud)
如果我尝试将其读取为numpy数组,np.loadtxt('test.csv', delimiter=';')我得到:
ValueError:无法将字符串转换为float:
而且不明白为什么?
wim*_*wim 22
你需要去除';'线条的尾随.
如果您知道有5列,可能的解决方法是:
np.loadtxt('test.csv', delimiter=';', usecols=range(5))
Run Code Online (Sandbox Code Playgroud)
或者,使用genfromtext而不是处理缺失值
np.genfromtxt('test.csv', delimiter=';')[:,:-1]
Run Code Online (Sandbox Code Playgroud)
因此,在我的情况下,csv文件在第一行中写入了列名。例如
Column1,Column2,Column3
5.4,2.3,2.4
6.7,3.6,9.3
Run Code Online (Sandbox Code Playgroud)
因此,正如在文档中给出的,我所要做的就是使用skiprows参数
因此,API调用变成了
np.loadtxt('test.csv', delimiter=',', skiprows=1)
| 归档时间: |
|
| 查看次数: |
58677 次 |
| 最近记录: |