我对Python相当陌生。我正在利用Python的holidays软件包,该软件包按国家/地区有公共假期。我希望编写一个遍历任何国家/地区并返回包含三列的dataframe
的函数:
Date, Holiday, Country
基于我的有限知识,我想到了这种实现方式:
import holidays
def getholidayDF(*args):
holidayDF = pd.DataFrame(columns=['Date','Holiday','Country'])
for country in args:
holidayDF.append(sorted(holidays.CountryHoliday(country,years=np.arange(2014,2030,1)).items()))
holidayDF['Country'] = country
return holidayDF
holidays = getholidayDF('FRA', 'Norway', 'Finland', 'US', 'Germany', 'UnitedKingdom', 'Sweden')
这将返回空白dataframe
。我不确定如何进行!
答案 0 :(得分:0)
如果您如下所示更改for循环,则应该可以。最相关的评论是由用户roganjosh发表的。 O'Reilly,Wrokx,Prentece Hall,Pearson,Packt ..仅举几名出版商……他们为您准备了一些好书。暂时跳过食谱。
.. code snippet ...
for country in args:
holidayDF = holidayDF.append(sorted(holidays.CountryHoliday(country,years=np.arange(2014,2030,1)).items()))
# holidayDF['Country'] = country # remove this from the for-loop.
return holidayDF # move out of the for-loop