我想在数据框中为特定日期范围的选择性列创建零。我一直在寻找有效的解决办法。你知道吗
我的代码创建了一个1的矩阵,比如dates=1/10/2016-16/8/2018(即ytd)。matrix1cols=A,B,C,D:
df = pd.DataFrame(np.ones(shape=(len(dates), len(matrix1cols))), index=dates)
df.columns = ['A','B','C', 'D']
现在,我希望将A列的第一季度(1月至3月)日期设为0,B列的第二季度日期设为0,C列的第三季度日期设为0,D列的第四季度日期设为0,所有年份均采用df。(我基本上是在为自己创建标志)
Ps-我的日期已经很多年了,为了方便起见,我简化了数据集。你知道吗
一种解决方案是使用一个简单的
for
循环。注意将索引转换为datetime
作为初步步骤,例如通过df.index = pd.to_datetime(df.index)
。你知道吗同样,在这种情况下,但更详细:
设置
Numpy切片
创建一个自定义数组,定义零的放置位置
另一种观点认为,它是正确的季度工作。你知道吗
相关问题 更多 >
编程相关推荐