gpt4 book ai didi

python - 在给定各种条件的情况下,如何更改 pandas 数据框中日期的年份?

转载 作者:行者123 更新时间:2023-11-30 21:57:02 24 4
gpt4 key购买 nike

我有一个如下所示的数据集:

    ID  Date    
1 3 2016-04-01
2 3 2016-04-02
3 3 2016-04-03
4 3 2016-04-04
5 3 2016-04-05
6 3 2017-04-01
7 3 2017-04-02
8 3 2017-04-03
9 3 2017-04-04
10 3 2017-04-05
11 7 2016-04-01
12 7 2016-04-02
13 7 2016-04-03
14 7 2016-04-04
15 7 2016-04-05
16 7 2017-04-01
17 7 2017-04-02
18 7 2017-04-03
19 7 2017-04-04
20 7 2017-04-05

我想在给定两个条件的情况下更改日期的年份。条件是 ID 的值和日期的年份。例如,如果ID = 3,年份是2016年,我想将其更改为2014年

最佳答案

你可以使用这样的东西:

def f(x):
if x['ID'] == 3 and '2016' in x['Date']:
return x['Date'].replace('2014','2016')
else:
return x['Date']

df['new_column'] = df.apply(f, axis=1)

根据日期的存储方式,您必须进行修改。此示例适用于简单的字符串,但应该适用于其他类型。

如果你想使用 lambda 函数:

df['new_column'] = df.apply(lambda x: x['Date'].replace('2014', '2016') if x['ID'] == 3 and '2016' in x['Date'] else x['Date'], axis=1)

关于python - 在给定各种条件的情况下,如何更改 pandas 数据框中日期的年份?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55376918/

24 4 0
文章推荐: c# - 从 MVC Controller 操作的 URL 中删除序列化模型
文章推荐: python - 形状(150,) 和形状(150,1) 有什么区别?
文章推荐: php - MySQL/PHP