在dataframe底部创建新行并添加列和

在dataframe底部创建新行并添加列和,r,R,我正在使用以下代码从工作目录读取csv文件: df <- read.csv("test1.csv", header = TRUE,skip =6, nrow = length(count.fields("test1.csv")) - 12) 我的数据集维度是365行x 24列,我正在尝试计算列(3:27)和,并在数据帧底部创建一个新行,其中包含和 data.frame如下所示: 如果我尝试使用以下示例数据进行测试,则效果良好: x <- data.frame(x1 = c(3:8

我正在使用以下代码从工作目录读取csv文件:

df <- read.csv("test1.csv", header = TRUE,skip =6, nrow =
length(count.fields("test1.csv")) - 12)
我的数据集维度是365行x 24列,我正在尝试计算列(3:27)和,并在数据帧底部创建一个新行,其中包含和

data.frame如下所示:

如果我尝试使用以下示例数据进行测试,则效果良好:

x <- data.frame(x1 = c(3:8, 1:2), x2 = c(4:1, 2:5),x3 = c(3:8, 1:2), x4 = c(4:1, 2:5))
x
apply(df,2,sum)
将尝试对所有列求和,如果列
type
date
属于R没有
sum
方法的类型,则此操作将失败。你可以试试

df[366,(3:27)] <- colSums(df[,3:27], na.rm=TRUE)

df[366,(3:27)]如果运行str(df),它是否会告诉您最后24列属于数值或整数类?看起来其中有一个或多个是字符classhi,如果我做str(df),最后25个字符的值是'num',答案是hanks Ben,它现在创建了第366行,但是值是'NA',除了最后一个显示总和的'Total',你知道如何纠正吗?谢谢你,谢谢你的帮助由于缺少数据,它显示的是na,因此我使用了:df[(nrow(df)+1),myNumCols]@Ayan,将
na.rm=TRUE
添加到
colSums
如何将参数总数传递到第一列的第366行?
x[366,(3:27)] <- apply(df, 2, sum)
df[366,(3:27)] <- colSums(df[,3:27], na.rm=TRUE)
myNumCols <- which(unlist(lapply(df, is.numeric)))
df[(nrow(df) + 1), myNumCols] <- colSums(df[, myNumCols], na.rm=TRUE)