簡體   English   中英

有人可以幫我計算所選列中所有行的平均值和標准差嗎

[英]Can someone help me calculate mean and sd for all my rows from selected columns

在我的數據集中,有很多行是代碼標記,然后有很多列我相信我們只對第 2-96 列感興趣,因為第 1 列是代碼標記名稱。 2-50 是 c3 重復,50 - 96 是 c4。 對於每個代碼標記,我打算從它們的 c3 和 c4 重復中產生平均值和 sd,因此輸出是每個代碼標記(行名)的 c3 和 c4 的平均值和 sd。 對於 c3_1、c3_1.1 等的所有 c3 重復,列名不僅僅是 c3。我希望它是一個 function 對於 c3 和 c4 的 sd 和均值。 我在想這可能意味着使用列號會更好(如前所述)。

我設法創建了此代碼,但是它可以滿足我的需要,但是對於列而不是行,這是一個簡單的解決方法嗎?

df1[,lapply(.SD, function(x) return(c(mean(x, na.rm = TRUE), sd(x, na.rm = TRUE)))), .SDcols = colnames(df1)[2 :6]]

我們可以做

library(dplyr)
iris %>%
 summarise_at(vars(Sepal.Length), list(mean = ~mean(., na.rm = TRUE),
     sd = ~sd(., na.rm = TRUE)))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM