Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/299.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将年份添加到日期列中的日期_Python_Pandas_Csv_Datetime_Data Cleaning - Fatal编程技术网

Python 将年份添加到日期列中的日期

Python 将年份添加到日期列中的日期,python,pandas,csv,datetime,data-cleaning,Python,Pandas,Csv,Datetime,Data Cleaning,我正在做一些数据清理,我有一个csv,其中的日期列包含“月日”,例如:4月12日。我想将2020年添加到该列中的每个日期,因此我有:2020年4月12日 我试过使用熊猫和datetime,但我觉得我显然错过了一个简单的答案 谢谢 编辑: 我应该说这之前,我已经导入了csv,我想添加一年后的事实。此外,我已经告诉熊猫,“开始”一栏包含日期 编辑2: 感谢:您可以尝试df['start']=df['start']。在这种情况下应用(lambda dt:dt.replace(year=2020))–

我正在做一些数据清理,我有一个csv,其中的日期列包含“月日”,例如:4月12日。我想将2020年添加到该列中的每个日期,因此我有:2020年4月12日

我试过使用熊猫和datetime,但我觉得我显然错过了一个简单的答案

谢谢

编辑:

我应该说这之前,我已经导入了csv,我想添加一年后的事实。此外,我已经告诉熊猫,“开始”一栏包含日期

编辑2:

感谢:您可以尝试df['start']=df['start']。在这种情况下应用(lambda dt:dt.replace(year=2020))–MrNobody33 13

成功了!感谢所有的帮助,我会尽量让我未来的帖子更清晰,并在提问时添加我的数据。我知道必须有一个简单的答案

试试这个

df['onset'] = df['onset'].astype(str) +'2020'

如果您试图编辑csv本身,可以尝试以下操作:

import pandas as pd
path = 'test.csv'                               #path of the .csv
df = pd.read_csv(path)                          #reads the file
df['onset'] = df['onset'].astype(str) +' 2020'  #Add the year
df.to_csv("test.csv", index=False)              #modify the file
或者,如果要编辑从该csv导入的数据帧,可以尝试以下操作:

import pandas as pd
path = 'test.csv' 
path = 'pathofthecsv'
df = pd.read_csv(path)                          #reads the file
df['onset'] = df['onset'].astype(str) +' 2020'  #Add the year

请粘贴您的数据片段,而不是图像。您是要编辑csv文件本身,还是要导入数据,然后添加年份信息?@0p3r4t0r我正在导入数据,然后添加年份信息。@Kuldeepsingsidhu我在iPad上,它不允许我使用Snippets因为我已经分析了我得到的熊猫的日期:1900-04-222020你可以尝试
df['start']=df['start'].apply(lambda dt:dt.replace(year=2020))
在这种情况下谢谢,但是因为我已经分析了日期,我得到了1900-04-222020。有没有一种方法可以用datetime来实现?你能展示你的数据框吗?我只能在您的数据框中看到日期和月份。虽然此代码可能会解决OP的问题,但最好包含关于代码如何解决OP问题的解释。通过这种方式,未来的访问者可以从您的帖子中学习,并将其应用到自己的代码中。因此,它不是一种编码服务,而是一种知识资源。此外,高质量、完整的答案更有可能被提升。这些特性,以及所有帖子都是独立的要求,是SO作为一个平台的一些优势,使其区别于论坛。您可以编辑以添加其他信息和/或使用源文档补充说明