gpt4 book ai didi

R 如何计算数据框多列中值的出现次数,并将特定值的按列计数保存为新行?

转载 作者:行者123 更新时间:2023-12-02 08:37:05 25 4
gpt4 key购买 nike

我有一个大型数据框(大约 1,000 行和 30,000 列),如下所示:

   chr pos  sample1 sample2 sample3 sample 4
1 5050 1 NA 0 0.5
1 6300 1 0 0.5 1
1 7825 1 0 0.5 1
1 8200 0.5 0.5 0 1

在给定的“chr”和“pos”处,给定样本的值可以采用 0、0.5、1 或 NA 的形式。我要执行大量查询,这些查询需要根据每个样本的值汇总对数据框进行子集化和排序。

我想计算每列给定值(例如 0.5)的出现次数,并将其另存为我的数据框中的新行。我的最终目标是能够使用新行的值对数据框的列进行子集化和/或排序。我已经看到关于计算出现次数的类似问题,但我似乎无法找到/识别同时在所有列上执行此操作并将特定值的列计数保存为新行的解决方案。

最佳答案

您可以将函数应用到数据框的所有列。假设你想计算数据框 d 每一列中 'A' 的数量

#a sample data.frame
L3 <- LETTERS[1:3]
(d <- data.frame(cbind(x = 1, y = 1:10), fac = sample(L3, 10, replace = TRUE)))



# the function you are looking for
apply(X=d,2,FUN=function(x) length(which(x=='A')))

关于R 如何计算数据框多列中值的出现次数,并将特定值的按列计数保存为新行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20305851/

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