gpt4 book ai didi

r - 如何交换(翻译)向量内的值

转载 作者:行者123 更新时间:2023-12-04 01:26:38 27 4
gpt4 key购买 nike


vetA <- c(1,2,1,2,1,3,4,1,2,3,2,1,4)

有哪些可能性可以让我进行以下交换?
交换:
  • 1 --> 3
  • 2 --> 4
  • 3 --> 2
  • 4 --> 1

  • 我试过这个:
    vetB <- as.factor(vetA)
    levels(vetB) <- c(3,4,2,1)
    vetA <- as.integer(vetB)

    # because
    print(vetB)
    # [1] 3 4 3 4 3 2 1 3 4 2 4 3 1
    #Levels: 3 4 2 1

    它没有用。你能帮我一把吗?

    最佳答案

    一种可能的选择是使用 match :

    vetA <- c(1,2,1,2,1,3,4,1,2,3,2,1,4)
    old=c(1,2,3,4)
    new=c(3,4,2,1)
    new[match(vetA,old)]

    输出:
    3 4 3 4 3 2 1 3 4 2 4 3 1

    希望这有帮助!

    关于r - 如何交换(翻译)向量内的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48724218/

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