您可以使用pandas.concat方法来实现这一目标:
>>> pd.concat([df['A'], df['B'].set_axis(df.index+2)], axis=1)
A B
0 1.0 NaN
1 2.0 NaN
2 3.0 a
3 4.0 b
4 5.0 c
5 NaN d
6 NaN e
如果您的索引不是数字类型的,您可以利用numpy.pad函数:
import numpy as np
# 将'A'列转换为浮点类型并进行填充
A = np.pad(df['A'].astype(float), (2, 0), constant_values=np.nan)
# 对'B'列进行填充
B = np.pad(df['B'], (0, 2), constant_values=np.nan)
# 创建新的DataFrame
out = pd.DataFrame({'A': A, 'B': B})