【发布时间】:2021-09-17 13:31:32
【问题描述】:
所以我的数据框有多个列,其中一个名为“multiple”,其中包含布尔值,只有 1 和 0。现在,我只想为所有 df.loc[df.multiple==1] 复制所有行 4 次。我怎样才能做到这一点? (我不想复制索引)
example input:
df=
index strings multiple
0 A 0
1 B 1
2 C 1
3 D 0
4 E 1
Expected output:
index strings multiple
0 A 0
1 B 1
2 B 1
3 B 1
4 B 1
5 B 1
6 C 1
7 C 1
8 C 1
9 C 1
10 C 1
11 D 0
12 E 1
13 E 1
14 E 1
15 E 1
16 E 1
【问题讨论】:
-
用
df[df.multiple==1]新建一个df并用pd.concat()添加4次 -
但这不会保持顺序。例如,如果索引 25 的 df.multiple=1,那么我需要按顺序将 25 复制到 26、27、28、29
-
请提供示例输入和匹配的预期输出以明确说明。
-
@mozway 我已经编辑并添加了示例输入和预期输出