【发布时间】:2020-03-26 22:01:44
【问题描述】:
我有一个 .csv 文件,它有 5 列,其中有一列中提到的日期为“date_value”,我需要根据提到的日期。例如:
A
date_key date_level date_value day_of_week day_of_week_name
2010W01 20 01.01.2010 NaN NaN
20100102 10 02.01.2010 7.0 Saturday
2010W02 20 03.01.2010 NaN NaN
20100103 10 03.01.2010 1.0 Sunday
20100104 10 04.01.2010 2.0 Monday
20100105 10 05.01.2010 3.0 Tuesday
20100106 10 06.01.2010 4.0 Wednesday
20100107 10 07.01.2010 5.0 Thursday
20100108 10 08.01.2010 6.0 Friday
20100109 10 09.01.2010 7.0 Saturday
2010W03 20 10.01.2010 NaN NaN
例如,根据 date_value 中的日期,对于 Sunday,day_of_week 将是 1 等等在。此外,每周之后会有一行 day_of_week 和 day_of_week_name 为空,因为它描述了您可以在 date_key 中看到的周数值 其中有一个 W,例如 - 2010W03。
我应该如何让这张表填充周数和周名,以便在需要时用空值相应地填充,我尝试了一些方法,但它似乎不起作用。
range1 = [2,3,4,5,6,7,1]
days = {'2': 'Monday', '3': 'Tuesday', '4': 'Wednesday', '5': 'Thursday', '6': 'Friday', '7':
'Saturday', '1': 'Sunday'}
print(days['2'])
def change_2018(df):
for i in df.date_level:
#print(i)
if i == 10:
for k in range1:
for key, value in days.items():
#print(key, value)
df.day_of_week = k
df.day_of_week_name = value
return df
change_2018(table_2018)
另外我想知道是否有任何干净的方法可以做到这一点,因为这个功能也运行了很长时间。
【问题讨论】: