我有以下数据结构(仍可能发生变化):
pp = ([Pair1, Pair2, Pair3, ..., Pair25])
每对具有以下格式:
<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 2016 entries, 2005-09-19 00:00:00 to 2013-09-12 00:00:00
Data columns (total 2 columns):
CA 2016 non-null values
Na 2016 non-null values
我有很多函数需要每天为每个 DataFrame 应用。然而,For-Loop 可能不会像 Pair1、Pair2、Pair3 那样逐步运行。 For 循环应该每天运行,例如:
2005-09-19: do function for each pair!
2005-09-20 and continue
2005-09-21
2005-09-22
有没有办法做到这一点,或者我是否需要完全改变我的数据结构和代码?
更新1
这就是我现在所处的位置,但是,它有效吗?
for i in range(len(ps[1])):
for row in ps:
print row[i:i+1]
A C DE
Date
2005-09-19 -0.600021 4.649857 3
A G DE
Date
2005-09-19 -0.600021 6.39693 0.105716
A W DE
Date
2005-09-19 -0.600021 6.950815 5
A C DE
Date
2005-09-20 -0.59711 4.637831 3
A G DE
Date
2005-09-20 -0.59711 6.396263 0.109079
A W DE
Date
2005-09-20 -0.59711 6.951772 5
A C DE
Date
2005-09-21 -0.594207 4.641213 3
A G DE
Date
2005-09-21 -0.594207 6.40059 0.109055
A W DE
Date
2005-09-21 -0.594207 6.955593 5
最佳答案
如果没有理由它们需要成为单独的数据帧,您应该将它们合并到一个具有多索引的数据帧中,或者只是一列指示它们属于哪一对。然后您可以通过分组来执行您的功能应用程序。
DF.groupby(['Date','pair']).apply(function)
关于python - for 每天同时循环 20 个数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19395019/