我有一个包含多个字符串的pandas列。我希望将所有这些字符串重复3次。
df = pd.DataFrame(data = ['a','b','c']),
所需的输出:
0
0 a
1 b
2 c
我要转换此表,使其看起来像这样:
0
0 a
1 a
2 a
3 b
4 b
5 b
6 c
7 c
8 c
我似乎找不到一种简单的方法来实现这一目标。
任何事情都会有所帮助。
答案 0 :(得分:4)
尝试:
df[0].repeat(3).reset_index(drop=True)
出局:
0 a
1 a
2 a
3 b
4 b
5 b
6 c
7 c
8 c
Name: 0, dtype: object
答案 1 :(得分:2)
您可以使用repeat
+ reindex
:
df = df.reindex(df.index.repeat(3))
Out[105]:
0
0 a
0 a
0 a
1 b
1 b
1 b
2 c
2 c
2 c
或concat
:
df = pd.concat([df]*3)