gpt4 book ai didi

list - 合并两个列表组件

转载 作者:行者123 更新时间:2023-12-04 15:14:56 24 4
gpt4 key购买 nike

我有一个很大的列表,但微型示例如下所示:

A <- c("A", "a", "A", "a", "A")
B <- c("A", "A", "a", "a", "a")
C <- c(1, 2, 3, 1, 4)
mylist <- list(A=A, B=B, C= C)

预期输出是将 A 与 B 合并,以便每个组件看起来像 AB
AA, aA, Aa, aa, Aa

更好的应该排序,大写总是第一
AA, Aa, Aa, aa, Aa

因此新的列表或矩阵应该有两列或两行:
AA, Aa, Aa, aa, Aa
1, 2, 3, 1, 4

现在我想根据类别计算 C 的平均值 - “AA”、“Aa”和“aa”

看起来很简单,但我无法轻松弄清楚。

最佳答案

> (ab <- paste(A, B, sep="") )
[1] "AA" "aA" "Aa" "aa" "Aa"
> (ab <- paste(A, B, sep="") ) # the joining step
[1] "AA" "aA" "Aa" "aa" "Aa"
> (ab <- sub("([a-z])([A-Z])", "\\2\\1", ab) ) # swap lowercase uppercase
[1] "AA" "Aa" "Aa" "aa" "Aa"

> rbind(ab, C) # matrix
[,1] [,2] [,3] [,4] [,5]
ab "AA" "Aa" "Aa" "aa" "Aa"
C "1" "2" "3" "1" "4"
> data.frame(alleles=ab, count=C) # dataframes are lists
alleles count
1 AA 1
2 Aa 2
3 Aa 3
4 aa 1
5 Aa 4

关于list - 合并两个列表组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7762294/

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