【发布时间】:2019-09-06 05:40:48
【问题描述】:
我有一组预处理函数,我最终调用它们来创建最终数据帧。如您所见,每个阶段的输出都作为输入传递给下一个阶段。
wrap_func = function(DF){ # Wrapper function which has all the above functions put together.
T1 = transform_ids(DF)
print("Id transformation success") #print statements are used for debugging purposes
T2 = transform_dates(T1)
print("date transformation success")
T3 = measurement_ids(T2)
print("measurement_ids transformation success")
T4 = oper_val_concepts(T3)
print("operator transformation success")
T5 = range_values(T4)
print("range capture success")
T6 = col_format(T5)
print("column formatting success")
T7 = missing_impute(T6,def_val)
print("Missing value Imputation success")
T7 = T7[c( # reordering the column display
"measurement_id","person_id")]
return(T7)
}
DF = wrap_func(dfm)
有什么优雅的写法吗?
这篇文章有类似的场景,但它是在 Python 中。related post
你能帮我用 R 把它变得优雅吗?
【问题讨论】:
-
您熟悉来自
magrittr的管道(%>%)以及像dplyr这样的包吗?如今,这种工作流程在 R 中非常普遍。 -
感谢您的回复。我在我的个人函数中使用了
%>%运算符来对数据框执行操作。我是 R 新手,所以真的不知道如何在这种情况下使用它来调用它们。 -
%>%基本上完全符合您的要求,请参阅r4ds.had.co.nz/pipes.html -
当然。谢谢会调查它
标签: r performance function dataframe