我正在尝试加载一个如下所示的数据集:
Algeria,73.131000,6406.8166213983,0.1
Angola,51.093000,5519.1831786593,2
Argentina,75.901000,15741.0457726686,0.5
Armenia,74.241000,4748.9285847709,0.1
最后,我只需要第1列和第2列.我不需要国名和最后一栏.基本上,我需要提取两个尺寸为nx1的矩阵.我知道我需要指定数据类型:
data=np.loadtxt('file.txt',delimiter=',',dtype=[('f0',str),('f1',float),('f2',float),('f3',float)])
但是,这会生成一个元组列表,
array([('', 73.131, 6406.8166213983, 0.1),
   ('', 51.093, 5519.1831786593, 2.0),`
代替
array(['',73.131,6406.8166213983,0.1],
      ['',51.093, 5519.1831786593, 2.0],
哪里出错了?
moe*_*nad 11
查看NumPy的文档.
x, y = np.loadtxt(c, delimiter=',', usecols=(1, 2), unpack=True)
该usecols参数应该把你的工作做好.
如果您只想要前两列,您可以使用genfromtxt:
import numpy as np
col1 = np.genfromtxt('yourfile.txt',usecols=(1),delimiter=',',dtype=None)
col2 = np.genfromtxt('yourfile.txt',usecols=(2),delimiter=',',dtype=None)
或两者一起:
np.genfromtxt('yourfile.txt',usecols=(1,2),delimiter=',',dtype=None)
| 归档时间: | 
 | 
| 查看次数: | 30767 次 | 
| 最近记录: |