Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.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 向numpy结构化数组添加新记录_Python_Arrays_Numpy_Adjacency Matrix_Recarray - Fatal编程技术网

Python 向numpy结构化数组添加新记录

Python 向numpy结构化数组添加新记录,python,arrays,numpy,adjacency-matrix,recarray,Python,Arrays,Numpy,Adjacency Matrix,Recarray,这是对numpy阵列早期学习的延续。 结构化数组是从列表的元素创建的,然后填充值(下面未显示) 填充的数组如下所示: x y z x 0 1 0 y 1 0 1,5 z 0 1,5 0 1.如何向上面添加新顶点? 2.添加顶点后,将以下数组添加到结构化数组的最干净过程是什么(注意:此数组中并非所有顶点都是新的): 预期产出(请与我一起承担): 看起来像是蟒蛇熊猫的工作 >>> import numpy as

这是对numpy阵列早期学习的延续。
结构化数组是从列表的元素创建的,然后填充值(下面未显示)

填充的数组如下所示:

    x   y   z   
x   0   1   0   
y   1   0   1,5 
z   0   1,5 0   
1.如何向上面添加新顶点?
2.添加顶点后,将以下数组添加到结构化数组的最干净过程是什么(注意:此数组中并非所有顶点都是新的):

预期产出(请与我一起承担):


看起来像是蟒蛇熊猫的工作

>>> import numpy as np
>>> import pandas as pd
>>> data=np.zeros((4,5))
>>> df=pd.DataFrame(data,columns=['x','y','z','a','b'])
>>> df
   x  y  z  a  b
0  0  0  0  0  0
1  0  0  0  0  0
2  0  0  0  0  0
3  0  0  0  0  0
>>> df['c']=0  #Add a new column
>>> df
   x  y  z  a  b  c
0  0  0  0  0  0  0
1  0  0  0  0  0  0
2  0  0  0  0  0  0
3  0  0  0  0  0  0

>>> new_data=pd.DataFrame([['0','1,2','0'],['1,2','0','1'],['0','1','0']],columns=['d','e','y'])
>>> new_data
     d    e  y
0    0  1,2  0
1  1,2    0  1
2    0    1  0

>>> df.merge(new_data,how='outer') #Merge data
    x  y   z   a   b   c    d    e
0   0  0   0   0   0   0  NaN  NaN
1   0  0   0   0   0   0  NaN  NaN
2   0  0   0   0   0   0  NaN  NaN
3   0  0   0   0   0   0  NaN  NaN
4 NaN  0 NaN NaN NaN NaN    0  1,2
5 NaN  0 NaN NaN NaN NaN    0    1
6 NaN  1 NaN NaN NaN NaN  1,2    0
有很多方法可以合并您显示的数据,您能更详细地解释一下您希望结束数组是什么样子吗

    d    e      y
d   0   '1,2'   0
e  '1,2' 0     '1'
f   0   '1'     0
    x   y   z   d   e   f
x   0   1   0   0   0   0
y   1   0   1,5 0   1   0
z   0   1,5 0   0   0   0
d   0   0   0   0   1,2 0
e   0   1   0   1,2 0   0
f   0   0   0   0   1   0
>>> import numpy as np
>>> import pandas as pd
>>> data=np.zeros((4,5))
>>> df=pd.DataFrame(data,columns=['x','y','z','a','b'])
>>> df
   x  y  z  a  b
0  0  0  0  0  0
1  0  0  0  0  0
2  0  0  0  0  0
3  0  0  0  0  0
>>> df['c']=0  #Add a new column
>>> df
   x  y  z  a  b  c
0  0  0  0  0  0  0
1  0  0  0  0  0  0
2  0  0  0  0  0  0
3  0  0  0  0  0  0

>>> new_data=pd.DataFrame([['0','1,2','0'],['1,2','0','1'],['0','1','0']],columns=['d','e','y'])
>>> new_data
     d    e  y
0    0  1,2  0
1  1,2    0  1
2    0    1  0

>>> df.merge(new_data,how='outer') #Merge data
    x  y   z   a   b   c    d    e
0   0  0   0   0   0   0  NaN  NaN
1   0  0   0   0   0   0  NaN  NaN
2   0  0   0   0   0   0  NaN  NaN
3   0  0   0   0   0   0  NaN  NaN
4 NaN  0 NaN NaN NaN NaN    0  1,2
5 NaN  0 NaN NaN NaN NaN    0    1
6 NaN  1 NaN NaN NaN NaN  1,2    0