gpt4 book ai didi

Python:将函数应用于数据帧的多个子集(存储在字典中)

转载 作者:行者123 更新时间:2023-12-01 00:03:42 24 4
gpt4 key购买 nike

问候,

如果此问题与其他问题重复,我们深表歉意。但我可以找到一个答案,准确地解决我的问题。

我将一个名为“data”的数据帧拆分为多个子集,这些子集存储在名为“dfs”的数据帧字典中,如下所示:

# Partition DF

dfs = {}
chunk = 5

for n in range((data.shape[0] // chunk + 1)):
df_temp = data.iloc[n*chunk:(n+1)*chunk]
df_temp = df_temp.reset_index(drop=True)
dfs[n] = df_temp

现在,我想将一个名为“fun_c”的预定义辅助函数应用于每个数据帧(存储在名为“dfs”的字典对象中)。

我将函数一次性应用到 dfs 是否正确,如下(?):

result = fun_c(dfs)

如果没有,正确的做法是什么?

最佳答案

这取决于您正在寻找的输出:

  • 如果您想在输出中包含一个字典,那么您应该将该函数应用于每个字典项
result = dict({key: fun_c(val) for key, val in dfs.items()})
  • 如果您想要输出中的数据帧/值列表,则将该函数应用于每个字典值
result = [fun_c(val) for val in dfs.items()]

但是这种风格也没有错,你也可以在辅助函数中按照你喜欢的方式进行迭代:

def fun_c(dfs):

result = None
# either
for key, val in dfs.items():
pass
# or
for val in dfs.values():
pass
return result

请告诉我这是否有帮助!

关于Python:将函数应用于数据帧的多个子集(存储在字典中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60134460/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com