Python 索引器错误:numpy数组中的元组索引超出范围

Python 索引器错误:numpy数组中的元组索引超出范围,python,arrays,numpy,matrix,Python,Arrays,Numpy,Matrix,我正在使用numpy和pandas进行矩阵值替换。我的主要目标是将矩阵ds2中的索引值匹配到ds1中,并用相应的值替换它。此代码段按预期工作 def missingValueProcessing(self ): ds1 = [[ 4, 13, 6, 9], [ 7, 12, 5, 7], [ 7, 0, 4, 22], [ 9, 8, 12, 0]] ds2 = [[ 4, 1],

我正在使用numpy和pandas进行矩阵值替换。我的主要目标是将矩阵ds2中的索引值匹配到ds1中,并用相应的值替换它。此代码段按预期工作

def missingValueProcessing(self ):
    ds1 = [[ 4, 13,  6,  9],
          [ 7, 12,  5,  7],
          [ 7,  0,  4, 22],
          [ 9,  8, 12,  0]]

    ds2 = [[ 4,  1],
           [ 5,  3],
           [ 6,  1],
           [ 7,  2],
           [ 8,  2],
           [ 9,  3],
           [12,  1],
           [13,  2],
           [22,  3]]

    ds1= pd.DataFrame(ds1)
    ds2= pd.DataFrame(ds2)

    #Processing ds1 by replacing
    ds2.groupby(0, as_index=False).mean()
    C = np.where(ds1.values.ravel()[:, None] == ds2.values[:, 0])
    print C[1]
当我在实际相似的大矩阵上做同样的事情时

ds2 = pd.read_table('https://gist.githubusercontent.com/karimkhanp/1692f1f76718c35e939f/raw/6f6b348ab0879b702e1c3c5e362e9d2062e9e9bc/ds2', header=None, sep=' ')

ds1 = pd.read_table('https://gist.githubusercontent.com/karimkhanp/9527bad750fbe75e072c/raw/ds1', sep=' ', header=None)
它给

  File "missing_value.py", line 15, in missingValueProcessing
    print C[1]
IndexError: tuple index out of range

任何建议都很值得一提,

do
,C=np.where(ds1.values.ravel()[:,None]==ds2.values[:,0])
?@Divakar:谢谢,但已经尝试过了,它在
,C=np.where(ds1.values.ravel()[:,None]==ds2.values[:,0])中也会给出同样的错误。
它本身就是运行建议的代码后的错误,在创建
C
或打印
C
时?@Divakar:在我建议的代码中,它给出了打印
C[1]
时的错误,而在您建议的代码中,它给出了创建
C
itself@Divakar:如果您有任何建议,我将不胜感激。关于do
,C=np.where(ds1.values.ravel()[:,None]==ds2.values[:,0])
?@Divakar:谢谢,但已经尝试过了,它在
\uuu0,C=np.where(ds1.values.ravel()[:,None]==ds2.values[:,0])中也会出现同样的错误。
它本身就是运行建议的代码后,在创建
C
或打印
C
时出现的错误,在您建议的代码中,它在创建
C
itself@Divakar:如果您有关于do
,C=np.where(ds1.values.ravel()[:,None]==ds2.values[:,0])的建议,我将不胜感激。@Divakar:谢谢,但已经尝试过了,它在
,C=np.where(ds1.values.ravel()[:,None]==ds2.values[:,0]中也会给出同样的错误
itself是运行建议的代码后,在创建
C
或打印
C
时出现的错误?@Divakar:在我建议的代码中,它在打印
C[1]
时出现错误,而在您建议的代码中,它在创建
C
时出现错误itself@Divakar当前位置如果您有任何建议,我将不胜感激