我正在用R Markdown编写我的第一个函数,但似乎不能完全正常工作。有人可以帮忙吗?
我正在使用一个字符变量,该变量以yyyy-mm-dd格式列出日期,我希望将其转换为格式为“ Jan”,“ Feb”等的日期。为此,我使用了2个步骤: / p>
All.abs$MonthBeginning= as.Date(All.abs$MonthBeginning, format= "%Y-%m-%d")
All.abs$MonthBeginning= as.Date(All.abs$MonthBeginning, format= "%b")
我想对其他2个数据帧(称为“ Carbs”和“ Pip.Taz”)中的相同变量(MonthBeginning)遵循相同的过程,而不必编写6行代码。
我编写了如下函数(名为chart_months),但似乎无法正常工作:
chart_months= function(x) {
x= as.Date(x, format= "%Y-%m-%d")
x= as.Date(x, format= "%b")
}
chart_months(All.abs$MonthBeginning)
chart_months(Carbs$MonthBeginning)
chart_months(Pip.Taz$MonthBeginning)
有人可以帮忙吗?
答案 0 :(得分:0)
这不能做到这一点:
然后使用以下代码将日期更改为“ Jan”等:
All.abs$MonthBeginning= as.Date(All.abs$MonthBeginning, format= "%b")
您要使用format
:
> string_date = "2001-05-22"
> date_object = as.Date(string_date, format="%Y-%m-%d")
> short_month = format(date_object, "%b")
> short_month
[1] "May"
所以您的功能应该是:
get_short_month = function(string_date){
date_object = as.Date(string_date, format="%Y-%m-%d")
short_month = format(date_object, "%b")
return(short_month)
}