我想将两列合并到一个新列中。
假设我有:
Index A B
0 1 0
1 1 0
2 1 0
3 1 0
4 1 0
5 1 2
6 1 2
7 1 2
8 1 2
9 1 2
10 1 2
现在我想创建一个 C 列,其中包含 A 中索引 0 到 4 的条目以及 B 列中索引 5 到 10 中的条目。它应该如下所示:
Index A B C
0 1 0 1
1 1 0 1
2 1 0 1
3 1 0 1
4 1 0 1
5 1 2 2
6 1 2 2
7 1 2 2
8 1 2 2
9 1 2 2
10 1 2 2
是否有 python 代码如何获取它?提前致谢!
最佳答案
如果 Index
是您可以使用的实际列 numpy.where
并说明你的条件
import numpy as np
df['C'] = np.where(df['Index'] <= 4, df['A'], df['B'])
Index A B C
0 0 1 0 1
1 1 1 0 1
2 2 1 0 1
3 3 1 0 1
4 4 1 0 1
5 5 1 2 2
6 6 1 2 2
7 7 1 2 2
8 8 1 2 2
9 9 1 2 2
10 10 1 2 2
关于Python:根据其他两列的值有条件地创建新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62951509/