gpt4 book ai didi

r - 在 R 中组合多个同名列

转载 作者:行者123 更新时间:2023-12-04 10:17:15 25 4
gpt4 key购买 nike

我想在 R 中组合一个数据框的多列。给定的数据看起来像这样:

names: 123   256   192   123   256
1 2 8 2 3
4 3 2 9 9
8 7 1 3 8

我将如何对同名列的元素求和以生成如下表:
names: 123   256   192
3 5 8
13 12 2
11 15 1

非常感谢。

最佳答案

正如@VincentZoonekynd 所建议的,拥有多个同名列并不是一个好主意。

无论如何,你可以这样做:

df <- data.frame(A=c(1,4,8),B=c(2,3,7),C=c(8,2,1),D=c(2,9,3),E=c(3,9,8))
names(df) <- c('123','256', '192', '123', '256')

df <- t(df) # transpose the data.frame
aggr <- by(df, INDICES=row.names(df), FUN=colSums) # collapse the rows with the same name
aggr <- as.data.frame(do.call(cbind,aggr)) # convert by() result to a data.frame

或者,在一行中:
aggr <- as.data.frame(do.call(cbind, by(t(df),INDICES=names(df),FUN=colSums)))

关于r - 在 R 中组合多个同名列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8961063/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com