DPs*_*DPs 7 python datetime dataframe pandas
我在 pandas DF 中有一个带有朱利安日期的日期列。如何将这些儒略日期转换为 mm-dd-yyyy 格式。
样本数据
ORG CHAIN_NBR SEQ_NBR INT_STATUS BLOCK_CODE_1 DATA_BLOCK_CODE_1
0 523 1 0 A C 2012183
1 523 2 1 I A 2013025
2 521 3 1 A H 2007067
3 513 4 1 D H 2001046
4 513 5 1 8 I 2006075
Run Code Online (Sandbox Code Playgroud)
我正在使用jd2gcal函数,但它不起作用。我也试图写这样的代码但没有用。
for i,row in amna.iterrows():
amna['DATE_BLOCK_CODE_1'] = datetime.datetime.strptime(row['DATE_BLOCK_CODE_1'], '%Y%j')
Run Code Online (Sandbox Code Playgroud)
期望的输出:
for i,row in amna.iterrows():
amna['DATE_BLOCK_CODE_1'] = datetime.datetime.strptime(row['DATE_BLOCK_CODE_1'], '%Y%j')
Run Code Online (Sandbox Code Playgroud)
请在这件事上给予我帮助。
julian = df.DATA_BLOCK_CODE_1.str[4:].str.extract("([1-9][0-9]?[0-9]?)")
df["DATA_BLOCK_CODE_1"] = df.DATA_BLOCK_CODE_1.str[:4] + "-" + julian
df['DATA_BLOCK_CODE_1'] = pd.to_datetime(df['DATA_BLOCK_CODE_1'], format='%Y-%j')
Run Code Online (Sandbox Code Playgroud)
正则表达式要求数字以除 0 之外的任何数字开头。(我假设DATA_BLOCK_CODE_1是字符串类型。)