我有很少的熊猫df,那些需要一个接一个地处理几个功能。因此,对于经过第一个函数后的某个df
,生成的df
将需要以相同的方式使用顺序函数进行处理。伪代码可能如下,如何正确使用lambda与pandas df?
df = func_1(df)
df = func_2(df)
df = func_3(df)
和稍后被附加在列表中,如lis.append(df)
。随着循环中,代码可能会喜欢下面,
storage = []
for df in dfs:
for func in functions:
df = func(df)
storage.append(df)
df = pd.concat(storage, ignore_index=True)
最后,我可以用concat
产生最终DF。上面的代码是它假设的,我的代码在下面。尽管代码完美运行,但它与我打算的方式不同。
storage = [map(lambda df: f(df) , dfs) for f in functions][-1]
df = pd.concat(storage, ignore_index=True)
对于存储,右手侧产生具有元素的列表号等于所述DFS和最后一个元素(-1)
恰好是List Of 1 Element
过程与DFS与联体一起的所有功能和。以下是区别,前面的storage
列表会生成所有带有函数的dfs,元素编号将与dfs相同。
我的问题:我如何才能使用lambda
函数来获取存储列表?该列表应包含与dfs
相同数量的元素,并且应该使用所有功能进行处理。
如果您有问题,我会尽力更好地解释它,但请在downvote之前咨询。
您正确回答问题,实际上,这是一个很好的答案。非常感谢CAPTAIN。 – Arefe