Python 正在转换字符串为的日期
我从python、pandas和matplotlib开始。我正在处理超过百万条的数据。我正在尝试更改日期格式。在CSV文件中,日期格式为2011年6月23日。我想用未来的日期来为每个候选人规划捐款金额。如何将日期格式转换为熊猫的可读格式 我的代码: 第一候选人 数据片 正在尝试转换为新的日期格式 这是错误消息Python 正在转换字符串为的日期,python,csv,pandas,datetime,numpy,Python,Csv,Pandas,Datetime,Numpy,我从python、pandas和matplotlib开始。我正在处理超过百万条的数据。我正在尝试更改日期格式。在CSV文件中,日期格式为2011年6月23日。我想用未来的日期来为每个候选人规划捐款金额。如何将日期格式转换为熊猫的可读格式 我的代码: 第一候选人 数据片 正在尝试转换为新的日期格式 这是错误消息 您需要使用不同的日期格式字符串: format='%d-%b-%y' 为什么? 错误消息给出了错误的线索: ValueError:无法将字符串转换为浮点:“05-JUL-11” 控制转
您需要使用不同的日期格式字符串:
format='%d-%b-%y'
为什么?
错误消息给出了错误的线索:
ValueError:无法将字符串转换为浮点:“05-JUL-11”
控制转换,当前为:
format='%d%b%Y'
所需字段包括:
%y - year without a century (range 00 to 99)
%b - abbreviated month name
%d - day of the month (01 to 31)
缺少的是分隔数据字符串中字段的
-
,以及两位数年份的y
,而不是四位数年份的当前y
。作为替代方法,您可以使用dateutil.parser直接解析包含字符串的日期,我已经为演示创建了一个随机数据帧
l = []
for i in range(100):
l.append('23-JUN-11')
B = pd.DataFrame({'Date':l})
现在,让我们导入dateutil.parser并将其应用于我们的日期列
import dateutil.parser
B['Date2'] = B['Date'].apply(lambda x : dateutil.parser.parse(x))
B.head()
Out[106]:
Date Date2
0 23-JUN-11 2011-06-23
1 23-JUN-11 2011-06-23
2 23-JUN-11 2011-06-23
3 23-JUN-11 2011-06-23
4 23-JUN-11 2011-06-23
请展示一个日期示例-如图所示csv@GiantsLoveDeathMetal列名为contb_receive_dt,日期格式为2011年6月20日,但当我打印数组时,我将其视为日期格式2011年6月23日,您能否发布一段CSV,151MB有点大。仅仅一百行就足够解决这个问题了,是吗?@JimFactor我发布了一个新链接,其中包含149个条目的较小版本。
format='%d-%b-%y'
format='%d%b%Y'
%y - year without a century (range 00 to 99)
%b - abbreviated month name
%d - day of the month (01 to 31)
l = []
for i in range(100):
l.append('23-JUN-11')
B = pd.DataFrame({'Date':l})
import dateutil.parser
B['Date2'] = B['Date'].apply(lambda x : dateutil.parser.parse(x))
B.head()
Out[106]:
Date Date2
0 23-JUN-11 2011-06-23
1 23-JUN-11 2011-06-23
2 23-JUN-11 2011-06-23
3 23-JUN-11 2011-06-23
4 23-JUN-11 2011-06-23