Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.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/1/oracle/9.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
MATLAB函数的Python等价物unique_Python_Python 3.x_Matlab_Group By_Pandas Groupby - Fatal编程技术网

MATLAB函数的Python等价物unique

MATLAB函数的Python等价物unique,python,python-3.x,matlab,group-by,pandas-groupby,Python,Python 3.x,Matlab,Group By,Pandas Groupby,我知道有人问过这个问题,但我还没有找到答案。非常感谢您的帮助 在Matlab中,它被写成:[C,ia,ic]=unique(A) 我对所有输出元素感兴趣,即C、ia和ic 下面是一个matlab函数的示例 我怎样才能用python重现这个呢?如前所述,我对所有输出元素感兴趣,即C、ia和ic使用的解决方案(感谢@SBad自己提高了解决方案的质量): 输出 [2 5 9] [1 3 0] [2 0 2 1] 通过列表理解,您还可以通过以下方式获得ic: ic = [i for j in A f

我知道有人问过这个问题,但我还没有找到答案。非常感谢您的帮助

在Matlab中,它被写成:
[C,ia,ic]=unique(A)

我对所有输出元素感兴趣,即
C
ia
ic

下面是一个matlab函数的示例 我怎样才能用python重现这个呢?如前所述,我对所有输出元素感兴趣,即
C
ia
ic
使用的解决方案(感谢@SBad自己提高了解决方案的质量):

输出

[2 5 9]
[1 3 0]
[2 0 2 1]

通过列表理解,您还可以通过以下方式获得
ic

ic = [i for j in A for i,x in enumerate(C) if x == j]

注意


请记住,MATLAB使用基于1(一)的索引,而Python使用基于0(零)的索引。

请提供一个输入示例和您想要得到的结果。完成。对不起,如果不清楚的话。谢谢你的回答。在数据帧的上下文中,如何扩展上述代码?例如,
C,ia=np.unique(DF[['A','B','C']],return\u index=True)
当我尝试它时,我得到了一个错误…任何进一步的都是非常受欢迎的,谢谢you@SBad我想你应该用一个dataframe的例子问一个新问题。这里我们会把事情搞砸。C,ia,ic=np.unique(A,return\u index=True,return\u inverse=True)
[2 5 9]
[1 3 0]
[2 0 2 1]
ic = [i for j in A for i,x in enumerate(C) if x == j]