私はこの問題の解決策をオンラインで見つけることができませんでした。これがそれです:
#Construct test dataframe
tf <- data.frame(1:3,4:6,c("A","A","A"))
#Try the apply function I'm trying to use
test <- apply(tf,2,function(x) if(is.numeric(x)) mean(x) else unique(x)[1])
#Look at the output--all columns treated as character columns...
test
#Look at the format of the original data--the first two columns are integers.
str(tf)
apply
一般的に、行/列に含まれるデータのタイプに基づいて、行/列でどの関数を使用するかを区別したいと思います。
mean
ここでは、列が数値の場合は単純で、unique
列が文字列の場合は最初の値が必要です。ご覧のとおり、apply
この関数を記述した方法では、すべての列を文字として扱います。