有没有不包含名称的DataFrame.iteritems()的等价物?

问题描述 投票:0回答:1

我有一些有多个实例的遗留代码,就像这样...

result = function(df['a'], df['b'], df['z'])

该函数接受 *args 所以我想知道是否可以通过以下方式来 "整理 "代码......

result = function(df[['a','b','z']].iteritems())

但是 iteritems() 返回一个 (name, Series) 对,所以不能用。

有没有一种 "整洁 "的方法来获取列表中的 Series 只? (不对,不 name)

(改变功能并不理想,它的设计是为了与Scalars和Arrays一起工作,由于Series是ArrayLike,它们也可以工作。 所以我只是 "希望 "有一个单独的Series列表......)

我最好的尝试只是让Series作为Arrays来代替,但我 "不喜欢 "它,因为多个实例的锅炉模板代码,感觉 "应该 "有一个直接的方法来迭代Series?

result = function(*(df[['a','b','z']].to_numpy().T))
python pandas series
1个回答
1
投票

循环浏览一个 Dataframe 返回一个列名列表,所以你可以使用列表理解。

function(*[df[i] for i in df[["a","b","z"]]])
© www.soinside.com 2019 - 2024. All rights reserved.