使用pandas将ddmmyy转换为mmyy格式?

使用pandas将ddmmyy转换为mmyy格式?,pandas,Pandas,我有ddmmyy格式的列(月),如何将其转换为mmyy格式 月份 6/1/2017 5/1/2017 我用了下面的代码,有人能帮我吗 import pandas as pd df = pd.read_csv(r"C:\Users\venkagop\Subbu\UK_IYA.csv") df['Month']=pd.to_datetime(df['Month'],format='%d/%m/%y') df.to_csv(r"C:\Users\venkagop\Subbu\my test.csv")

我有ddmmyy格式的列(月),如何将其转换为mmyy格式

月份
6/1/2017 5/1/2017 我用了下面的代码,有人能帮我吗

import pandas as pd
df = pd.read_csv(r"C:\Users\venkagop\Subbu\UK_IYA.csv")
df['Month']=pd.to_datetime(df['Month'],format='%d/%m/%y')
df.to_csv(r"C:\Users\venkagop\Subbu\my test.csv")

我认为您可以通过参数
parse_dates
dayfirst
将列转换为datetime,然后通过以下方式转换为自定义格式:

您的代码:

df = pd.read_csv(r"C:\Users\venkagop\Subbu\UK_IYA.csv")
df['Month']=pd.to_datetime(df['Month'],format='%d/%m/%y').dt.strftime('%b %y')
df.to_csv(r"C:\Users\venkagop\Subbu\my test.csv")
样本

import pandas as pd

temp=u"""Month,sale
05/03/12,2
05/04/12,4
05/05/12,6
05/06/12,8"""
#after testing replace 'pd.compat.StringIO(temp)' to 'filename.csv'
df = pd.read_csv(pd.compat.StringIO(temp), parse_dates=['Month'], dayfirst=True)
print (df)
       Month  sale
0 2012-03-05     2
1 2012-04-05     4
2 2012-05-05     6
3 2012-06-05     8
df['Month']= df['Month'].dt.strftime('%b %y')
print (df)
    Month  sale
0  Mar 12     2
1  Apr 12     4
2  May 12     6
3  Jun 12     8

我已经试过了,但是我使用下面的格式117使用
.dt.strftime(“%b%y”)
代替
.dt.strftime(“%m%y”)
它的工作方式,但是当我在excel上应用过滤器时,它只显示2018,但我在excel中也有2016和2017的数据。@subbu-excel中有一些问题,需要按最后一个字母筛选
18
不确定如何克服此问题,执行后如果应用筛选器验证数据,则我面临的问题除此之外一切正常。
import pandas as pd

temp=u"""Month,sale
05/03/12,2
05/04/12,4
05/05/12,6
05/06/12,8"""
#after testing replace 'pd.compat.StringIO(temp)' to 'filename.csv'
df = pd.read_csv(pd.compat.StringIO(temp), parse_dates=['Month'], dayfirst=True)
print (df)
       Month  sale
0 2012-03-05     2
1 2012-04-05     4
2 2012-05-05     6
3 2012-06-05     8
df['Month']= df['Month'].dt.strftime('%b %y')
print (df)
    Month  sale
0  Mar 12     2
1  Apr 12     4
2  May 12     6
3  Jun 12     8