【发布时间】:2016-09-26 10:38:14
【问题描述】:
我在 Python 中使用 Pandas 模块加入了两个 .csv 文件。一列是格式为“dd.mm.yyyy”的日期。
现在我想从中只提取月份(作为带有前导零的 2 位整数)以供进一步使用。
到目前为止,我已经完成了这项工作,但我不得不作弊。 Python 认为我得到的字符串是 DAY。我不喜欢半生不熟的东西,所以想问问社区我如何具体告诉 Python 日期的哪一部分是月份,以便可以返回给我?
这是我目前所拥有的:
import pandas
def saison(input):
if input == "04" or input == "05" or input == "06" or input == "07" or input == "08" or input == "09":
return "Sommer"
else:
return "Winter"
df_1 = pandas.read_csv("a.csv", sep=';', names=["DWD_ID", "Datum"], header=0)
df_2 = pandas.read_csv("b.csv", sep=';', names=[VEG", "DWD_ID"], header=0)
df_joined = pandas.merge(df_1, df_2, on="DWD_ID")
df_joined["Datum"] = pandas.to_datetime(df_joined["Datum"])
df_joined["Saison"] = saison(df_joined["Datum"].apply(lambda x: x.strftime('%d')))
如果我使用
x.strftime('%m')
相反,它会在当天返回给我。
【问题讨论】:
标签: python python-2.7 csv pandas