我有一个数据帧和两个Pandas系列ac和cc,我想将这两个系列作为列附加一个循环。但问题是,我的数据框有一个时间指数系列为整数将两个Pandas序列附加到一个数据帧,并按循环列
A='a'
cc = pd.Series(np.zeros(len(A)*20))
ac = pd.Series(np.random.randn(10))
index = pd.date_range(start=pd.datetime(2017, 1,1), end=pd.datetime(2017, 1, 2), freq='1h')
df = pd.DataFrame(index=index)
我已经有一个回答我的问题,但没有环here
现在,我需要添加一个循环,但我得到了在按键的错误:
az = [cc, ac]
for i in az:
df.join(
pd.concat(
[pd.Series(s.values, index[:len(s)]) for s in [i]],
axis=1, keys=[i]
)
)
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), ,a.any() or a.all().
我keys = [i.all()]
试过,我只是代替列名我有真假正确答案。
最终的结果应该是这样的:
cc ac
2017-01-01 00:00:00 1 0.247043
2017-01-01 01:00:00 1 -0.324868
2017-01-01 02:00:00 1 -0.004868
2017-01-01 03:00:00 1 0.047043
2017-01-01 04:00:00 1 -0.447043
2017-01-01 05:00:00 NaN NaN
... ... ...
我无法确切地告诉你想要的结果是什么样子。你希望它和你的其他问题的结果完全一样吗?刚刚生成一个循环? – piRSquared
就是这样。 – KinWolf