Q
複製交替矢量值
7
A
回答
10
rep()
將做的伎倆。
x <- 3:50
rep(x, (x %% 2 == 0) + 1L)
# [1] 3 4 4 5 6 6 7 8 8 9 10 10 11 12 12 13 14 14 15 16 16 17
# [23] 18 18 19 20 20 21 22 22 23 24 24 25 26 26 27 28 28 29 30 30 31 32
# [45] 32 33 34 34 35 36 36 37 38 38 39 40 40 41 42 42 43 44 44 45 46 46
# [67] 47 48 48 49 50 50
x %% 2 == 0
給出指示其x
元件甚至邏輯矢量。由於TRUE
和FALSE
的整數值分別爲1
和0
,因此在x %% 2 == 0
上加1會爲我們提供rep()
中times
參數所需的向量。
如果我們打高爾夫,我們可以縮短到rep(x, (!x %% 2) + 1L)
。
請注意,如果我們的原始矢量是而不是連續的,我們仍然希望複製偶數值,此方法也會有用。
v <- c(1, 2, 4, 3, 6)
rep(v, (!v %% 2) + 1L)
# [1] 1 2 2 4 4 3 6 6
5
使用回收,有點手動方式:
x <- 3:50
sort(c(x, x[c(FALSE, TRUE)]))
8
我們可以合併所有值的矢量和偶數號碼的載體一起:
sort(c(3:50, 2:25*2))
相關問題
- 1. 矢量[] vs複製
- 2. 在矢量替換值
- 3. 根據矢量值繪製矢量
- 4. c中的矢量複製
- 5. 複製載體矢量
- 6. C++矢量複製元素?
- 7. 如何用Mathematica中的值代替矢量來估計矢量
- 8. 用另一個矢量替換矢量中的值
- 9. C++:替代矢量引用以避免複製大數據
- 10. 如何優雅地用不同的矢量替代重複值?
- 11. 如何交換矢量中的非可複製元素?
- 12. 替換矢量中的元素值
- 13. 用矢量替換
- 14. 在複製構造函數中複製矢量向量
- 15. 在Matlab中將矢量複製到矢量中
- 16. 將「矢量矢量」複製到「數組數組」中
- 17. 將R矢量複製到另一個矢量是否正確?
- 18. 從POD矢量數據複製到字節(乾淨)的矢量
- 19. 有矢量<object>;返回矢量<object.member>不復制
- 20. C++想在矢量交換價值
- 21. 交叉口矢量
- 22. MATLAB:複製矢量的每個元素?
- 23. 更名矢量而不是複製它
- 24. 複製分配JSON-容器矢量
- 25. 矢量不會複製到數組中?
- 26. 從矢量複製創建矩陣,python
- 27. 如何自我複製矢量?
- 28. 複製到矢量用C++ <pointer*>
- 29. 將地圖複製到矢量
- 30. 在C++中複製並遍歷矢量
多一點硬編碼:'rep(3:50,rep(1:2,24))' – lmo