我希望将pandas
datetime
系列的日期时间转换为日期。
我列出了以下代码:
df = pd.DataFrame()
df = pandas.io.parsers.read_csv("TestData.csv", low_memory=False)
df['PUDATE'] = pd.Series([pd.to_datetime(date) for date in df['DATE_TIME']])
df['PUDATE2'] = datetime.datetime.date(df['PUDATE']) #Does not work
任何人都可以指导我正确的方向吗?
答案 0 :(得分:2)
您可以使用datetime
方法访问Pandas系列的.dt
方法(与您使用.str
访问字符串方法的方式类似。对于您的情况,您可以将datetime列的日期提取为:
df['PUDATE'].dt.date
答案 1 :(得分:1)
这是从熊猫那里获取月份的简单方法
#create a dataframe with dates as a string
test_df = pd.DataFrame({'dob':['2001-01-01', '2002-02-02', '2003-03-03', '2004-04-04']})
#convert column to type datetime
test_df['dob']= pd.to_datetime(test_df['dob'])
# Extract day, month , year using dt accessor
test_df['DayOfMonth']=test_df['dob'].dt.day
test_df['Month']=test_df['dob'].dt.month
test_df['Year']=test_df['dob'].dt.year
答案 2 :(得分:0)
我认为您需要指定格式,例如 df ['PUDATE2'] = datetime.datetime.date(df ['PUDATE'],format ='%Y%m%d%H%M%S')
所以你只需要知道你正在使用什么格式