Pandas - 根据新列中的值复制数据框

Pandas - copy dataframe base on values in a new column

假设我有这个简单的 df:

    A  B
0   1  2
1   3  4

现在我想添加一个新列,C,获取值,比方说 ['Orange','Apple'], 我想复制整个 df,一次用于 'Orange',一次用于 'Apple', 这样我的最终结果将如下所示:

    A  B     C
0   1  2  Orange
1   3  4  Orange
3   1  2  Apple
4   3  4  Apple

它们是否是 pandas 中的内置单行代码,允许我这样做? 我目前正在使用 for 循环,并附加结果...

如有任何帮助,我们将不胜感激!

在你的情况下尝试 mergecross

m = pd.DataFrame({'C':['Orange','Apple']})
df.merge(m,how='cross')
Out[151]: 
   A  B       C
0  1  2  Orange
1  1  2   Apple
2  3  4  Orange
3  3  4   Apple