在pandas中返回两个值不能像在一个返回参数中那样设置整行,是因为pandas中的返回值是基于索引的。在pandas中,数据通常是以DataFrame的形式存储的,而DataFrame是由多个Series组成的,每个Series都有自己的索引。
当我们使用多个返回值时,pandas会将这些返回值作为多个Series返回,每个Series都有自己的索引。如果我们将这些返回值放在一个返回参数中,那么它们将会被视为一个Series,而不是多个Series。
举个例子来说,假设我们有一个DataFrame df,其中包含两列'A'和'B'。我们可以使用以下方式返回两列的值:
A = df['A']
B = df['B']
这样我们就可以分别获得列'A'和列'B'的值,并且它们都是以Series的形式返回的,每个Series都有自己的索引。
如果我们尝试将它们放在一个返回参数中,如下所示:
A, B = df[['A', 'B']]
这样做是错误的,因为df[['A', 'B']]返回的是一个DataFrame,而不是多个Series。因此,我们需要使用上述的第一种方式来分别获取每列的值。
总结起来,pandas中返回两个值不能像在一个返回参数中那样设置整行,是因为pandas的返回值是基于索引的,每个返回值都是一个Series,如果将它们放在一个返回参数中,将会被视为一个DataFrame,而不是多个Series。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云