Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将列添加到数据数组?_Python_Matrix_Numpy_Concat - Fatal编程技术网

Python 如何将列添加到数据数组?

Python 如何将列添加到数据数组?,python,matrix,numpy,concat,Python,Matrix,Numpy,Concat,下面的代码读取一个文件,并使用genfromtxt提供一个数据数组: arr = np.genfromtxt(filename, delimiter=',', converters={'Date': make_date}, names=('Date', 'Name','Age'), dtype=None) 现在,我想在arr中添加另一个名为“Marks”的列。你能帮我一下吗?np.genfromtxt生成记录数组。列不能以通常的numpy方式连接到记录数

下面的代码读取一个文件,并使用genfromtxt提供一个数据数组:

arr = np.genfromtxt(filename, delimiter=',', converters={'Date': make_date},
                    names=('Date', 'Name','Age'), dtype=None)

现在,我想在arr中添加另一个名为“Marks”的列。你能帮我一下吗?

np.genfromtxt
生成记录数组。列不能以通常的numpy方式连接到记录数组。使用
numpy.lib.recfunctions.append\u字段

import numpy as np
from numpy.lib import recfunctions as rfn
from StringIO import StringIO

s = StringIO('2012-12-10,Peter,30\n2010-01-13,Mary,31')
arr = np.genfromtxt(s, delimiter=',', names=('Date', 'Name','Age'), dtype=None)
new_arr = rfn.append_fields(arr, names='Marks', data=['A','C+'], usemask=False)
这将返回:

>>> arr
array([('2012-12-10', 'Peter', 30), ('2010-01-13', 'Mary', 31)], 
  dtype=[('Date', '|S10'), ('Name', '|S5'), ('Age', '<i8')])
>>> new_arr
array([('2012-12-10', 'Peter', 30, 'A'), ('2010-01-13', 'Mary', 31, 'C+')], 
  dtype=[('Date', '|S10'), ('Name', '|S5'), ('Age', '<i8'), ('Marks', '|S2')])
>>arr
数组([('2012-12-10','Peter',30),('2010-01-13','Mary',31)],
数据类型=[('Date','S10'),('Name','S5'),('Age','