假设我们有下面的 Dataframe 。
col1 col2 col3
0 one two three
1 one two three
2 one two three
3 one two three
4 one two three
我们试图在这个 Dataframe 中引入31列,每列代表一个月中的一天。
假设我们要在col2
列和col3
列之间精确地引入它。
我们如何实现这一目标?
为了简单起见,引入的列可以从1到31编号。
起始源代码
import pandas as pd
src = pd.DataFrame({'col1': ['one', 'one', 'one', 'one','one'],
'col2': ['two', 'two', 'two', 'two','two'],
'col3': ['three', 'three', 'three', 'three','three'],
})
5条答案
按热度按时间iqjalb3h1#
您可以使用
pd.concat
并使用iloc
对列进行重新排序,如下所示:输出:
vfh0ocws2#
v1l68za43#
我将为原始 Dataframe 赋值,并使用列选择对列重新排序。
或者对于全新的副本,请使用
assign
:piok6c0g4#
如果您的目的是添加和初始化新列,请使用
reindex
:输出:
inkz8wg95#
另一种可能的解决方案:
输出: