我在df中有几个名称相同的列.需要重命名它们.通常的重命名重命名全部无论如何我可以将下面的blah(s)重命名为blah1,blah4,blah5?
In [6]:
df=pd.DataFrame(np.arange(2*5).reshape(2,5))
df.columns=['blah','blah2','blah3','blah','blah']
df
Out[6]:
blah blah2 blah3 blah blah
0 0 1 2 3 4
1 5 6 7 8 9
Run Code Online (Sandbox Code Playgroud)
在[7]中:
df.rename(columns = {'blah':'blah1'})
Out[7]:
blah1 blah2 blah3 blah1 blah1
0 0 1 2 3 4
1 5 6 7 8 9
Run Code Online (Sandbox Code Playgroud) 我需要回到月初,但是如果我已经开始的话,我想呆在那里。应该使用n = 0的Pandas锚定偏移量做到这一点,但它不会在(-)MonthBegin的锚定点之间产生预期结果。
例如,为此,
pd.Timestamp('2017-01-06 00:00:00') - pd.tseries.offsets.MonthBegin(n=0)
我希望将我移回原处,Timestamp('2017-01-01 00:00:00')
但我却得到了Timestamp('2017-02-01 00:00:00')
我做错了什么?还是您认为这是一个错误?
我还可以看到,相同的规则对于MonthEnd也可以正常工作,因此将如下所示的2结合起来pd.Timestamp('2017-01-06 00:00:00')+pd.tseries.offsets.MonthEnd(n=0)-pd.tseries.offsets.MonthBegin(n=1)
可以达到预期的效果,Timestamp('2017-01-01 00:00:00')但是我希望它可以与- pd.tseries.offsets.MonthBegin(n=0)