Python 3.x 从.CSV文件分割日期:2016年1月16日到2016年16日16月1日

Python 3.x 从.CSV文件分割日期:2016年1月16日到2016年16日16月1日,python-3.x,pandas,datetime,split,strptime,Python 3.x,Pandas,Datetime,Split,Strptime,我有一个.csv文件,其中包含列:名称、日期、信息、统计信息、更多信息 我想导入.csv文件(使用Python 3.6代码或Pandas) 然后我需要过滤列:名称、日期、信息 这里是我遇到问题的地方,我需要获取.csv文件中的“日期”列,该列将日期列为2016年1月16日,并将其分开,以便我只能为过滤后的.csv输出文件选择月份 我要读的最后一栏,如姓名、月份、信息 整个“日期”栏分为两年——2016年和2017年。我需要获取2016年的名称、月份和信息,并将其保存到一个新的.csv文件中,20

我有一个.csv文件,其中包含列:名称、日期、信息、统计信息、更多信息

我想导入.csv文件(使用Python 3.6代码或Pandas)

然后我需要过滤列:名称、日期、信息

这里是我遇到问题的地方,我需要获取.csv文件中的“日期”列,该列将日期列为2016年1月16日,并将其分开,以便我只能为过滤后的.csv输出文件选择月份

我要读的最后一栏,如姓名、月份、信息

整个“日期”栏分为两年——2016年和2017年。我需要获取2016年的名称、月份和信息,并将其保存到一个新的.csv文件中,2017年的名称、月份和信息也是一样的,因此每年都以分组月份分隔

averageData = pd.read_csv('Data.csv', sep = ',', parse_dates=True)
df1 = averageData.loc[:, ["DATE", "NAME", "INFO"]]
df1["DATE"] = pd.to_datetime(df1["DATE"])
stripdate = datetime.datetime.strptime(['01-01-2016'], '%Y-%m-%d')
变量stripdate where datetime.datetime.strtime()应该以正确的格式重新排列日期,这是我误解的地方。我如何按照.csv文件中“日期”列下列出的日期的月份对所有内容进行分组。然后在新的.csv文件中按年份进一步分组

import pandas as pd

df = pd.DataFrame({'date':['01-16-2016','06-24-2016','04-30-2016','07-09-2016','03-21-2017','01-13-2017'],'Parameter':[10,420,60,10,21,33]})

df['date'] = pd.to_datetime(df['date'], format='%m-%d-%Y')
如果要向数据中添加年:2016、日:16、月:1的列,请尝试:

df['Year'] = df['date'].dt.year
df['Month'] = df['date'].dt.month
df['Day'] = df['date'].dt.day
之后,您可以根据年份定位数据帧并保存到csv

df.loc[df['Year'] == 2016].to_csv('2016.csv')
如果您希望每月对数据进行分组:

df=df.set_index('date')
df1=df.resample("M").sum() # Mean is another option.

df1 = df.groupby(pd.TimeGrouper("M")).sum()