我有一个像这样的数据框
V1 V2 V3 V4 V5 ... V8030
2 4 5 4 16 ... 2
.
.
.
ncol = 8030。对于每一行,我想将每列添加到列索引中添加365。
到目前为止,我一直在将数据框拆分为包含每行值的列表
list <- split(df, rep(1:nrow(df), each = ncol(df)))
但后来我不知道如何继续。
非常感谢
答案 0 :(得分:1)
您需要在此处执行的主要操作是使用split.default
而不是split
,因为data.frame
的{{1}}方法将按行而不是列进行拆分。以下算法将生成一个数据框,其中每列是(split
)等列的平均值,在这种情况下,n, n + m, n + 2 * m + ... + k * m
为365,m
为22,{{{ 1}}属于k
。
n
这假设您的数据框有多个1:365
列。在您的情况下,df.split <- split.default(df, rep(1:m, ncol(df) / m))
as.data.frame(lapply(df.split, apply, 1, mean, na.rm=T))
为365,您的数据框确实有多个。这是我编写的一些数据来测试它:
m