我有不同熊猫系列的结果,最终以1x1系列结束。现在我想将它们全部合并到1xN行。他们每个人都可能有不同的指数。
我可以重置每个索引创建一个新的数据框。但是,我想知道是否有更快/更容易的方法。
edit1:添加数据和所需的输出样本
A
326 0.005077
dtype: float64
date
4300 2011-01-18 16:00:00
Name: datetime, dtype: datetime64[ns]
B
5 0.004077
dtype: float64
我希望有类似的东西:
Index A B
2011-01-18 16:00:00 0.005077 0.004077
我想要这个的原因:程序运行一个循环并返回上述1xN行的多个,如果日期不同,我想要相互追加,或者如果日期(索引)相同则将值相加(可以按照此处所示完成:Loop: Results to be updated via += if on the same date, otherwise write next line
edit2:道歉我的代码中有一些例外,我必须设置某些系列对象= 0.有没有办法在下面的单行中包含它或者我是否需要从我的零中制作pd.series?
答案 0 :(得分:2)
我认为需要:
A = pd.Series([0.005077], index=[326])
date = pd.Series(['2011-01-18 16:00:00'], index=[4300])
B = pd.Series([ 0.004077], index=[5])
df = pd.DataFrame([np.concatenate([A, B])], columns=['A','B'], index=date)
print (df)
A B
2011-01-18 16:00:00 0.005077 0.004077
编辑:
标量的是必要的,创建一个项目列表:
A = pd.Series([0.005077], index=[326])
date = pd.Series(['2011-01-18 16:00:00'], index=[4300])
B = pd.Series([ 0.004077], index=[5])
C = 0
df = pd.DataFrame([np.concatenate([A, B, [C] ])], columns=['A','B','C'], index=date)
print (df)
A B C
2011-01-18 16:00:00 0.005077 0.004077 0.0