如何重复 pandas 数据帧?
问题描述
这是我的DataFrame,应该重复5次:
>>> x = pd.DataFrame({'a':1,'b':2}, index = range(1))
>>> x
a b
0 1 2
我希望得到这样的结果:
>>> x.append(x).append(x).append(x)
a b
0 1 2
0 1 2
0 1 2
0 1 2
但肯定有比追加4次更聪明的方法。实际上,我正在处理的DataFrame应该重复50次。
我没有找到任何实用的东西,包括np.repeat
-它在DataFrame上不起作用。
有人能帮忙吗?
解决方案
可以使用concat
函数:
In [13]: pd.concat([x]*5)
Out[13]:
a b
0 1 2
0 1 2
0 1 2
0 1 2
0 1 2
如果您只想重复这些值,而不想重复索引,您可以这样做:
In [14]: pd.concat([x]*5, ignore_index=True)
Out[14]:
a b
0 1 2
1 1 2
2 1 2
3 1 2
4 1 2
相关文章