给定以下数据集,并且当前周为2019/W37
,如何使用np.where
删除当前周之前的行?你知道吗
Year Week Value
0 2019 31 10
1 2019 32 20
2 2019 33 30
3 2019 34 40
4 2019 35 50
5 2019 36 60
6 2019 37 70
7 2019 38 80
8 2019 39 90
9 2019 40 100
我尝试了以下方法:
import pandas as pd
import numpy as np
from datetime import datetime
data = {
"Year": [2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019, 2019],
"Week": [31, 32, 33, 34, 35, 36, 37, 38, 39, 40],
"Value": [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
}
df = pd.DataFrame(data)
print(df)
YearWeek = datetime.now().strftime("%Y/W%V")
print(YearWeek)
df["Exclude"] = np.where(str(df["Year"] + "/" + df["Week"]) < YearWeek, "Yes", "No")
print(df)
试试这个:
或使用np.哪里()
要生成排除列:
您可以使用十进制星期制:
结果
在ISO Date System中,一年最多可以有53周,因此我们使用54来防止N年的最后一周出现在N+1年中。任何超过54岁的都可以。这只是我们将一年和一周合并成一个单一的、可比较的数量的一种方法。你知道吗
相关问题 更多 >
编程相关推荐