回答
linMap <- function(x, from, to)
(x - min(x))/max(x - min(x)) * (to - from) + from
linMap(vec, 12, 102)
# [1] 12 22 92 102
或者更明確:用包scales
linMap <- function(x, from, to) {
# Shifting the vector so that min(x) == 0
x <- x - min(x)
# Scaling to the range of [0, 1]
x <- x/max(x)
# Scaling to the needed amplitude
x <- x * (to - from)
# Shifting to the needed level
x + from
}
rescale(vec, c(12, 102))
作品。也可以按照@flodel的建議以巧妙的方式利用approxfun
:
linMap <- function(x, a, b) approxfun(range(x), c(a, b))(x)
我在你的'linMap'和'rescale'中有一個暫時的行爲,其中一些列在R 3.3.2中變爲零。示例值all.dat < - c(2274959,1531001)'。你知道爲什麼嗎? –
@Masi,你是什麼意思的時間行爲?我想'all.dat'是我答案中的符號'x'。那麼從','到',你預期的產出和你所得到的是什麼? – Julius
我得到零列。 –
- 1. R用矢量映射的值映射
- 2. 如何將範圍映射到值?
- 3. 如何將MapView的範圍映射到開放視圖範圍
- 4. 如何在Haskell中的矢量的特定範圍上映射函數
- 5. 如何在Python中將範圍內的所有值映射到n範圍(n)
- 6. 如何將範圍<0;99>中的數字映射到範圍<-1.0;1.0>?
- 7. 將值映射到特定範圍
- 8. 整數範圍到矢量
- 9. 如何在Python中將字符映射到整數範圍[-128,127]?
- 10. 如何在R中映射影響範圍
- 11. 將範圍映射到另一個範圍
- 12. 地圖串矢量或不同的鍵映射到一個值
- 13. 將浮點範圍[-1,1]映射/量化到整數
- 14. 如何將矢量映射到地圖,重複鍵值?
- 15. 如何將數字範圍映射到彼此?
- 16. 如何將一系列顏色映射到整數範圍?
- 17. Spring JWT:如何將用戶權限映射到訪問範圍
- 18. 我如何指定矢量的範圍?
- 19. 根據數字的不同範圍將數值映射到R中的分類值
- 20. 映射2矢量 - 幫助矢量化
- 21. 範圍的C++映射
- 22. 使用Keras中的LSTM將矢量序列映射到單個矢量
- 23. 在VBScript中將值的一個範圍映射到另一個範圍
- 24. Scala的元組的矢量映射到對象的矢量
- 25. 在python中將整型值映射到顏色的範圍
- 26. R中的變量範圍
- 27. Objective-c:映射範圍
- 28. GDB:地址範圍映射
- 29. Cubism.js - 範圍到顏色映射
- 30. 映射一個「名稱」到範圍
你能解釋一下你的映射嗎?我不明白爲什麼2映射到62或者爲什麼270在那裏,因爲它落在你的範圍之外。 – David
對不起@David,我混淆了兩個我用來理解問題的例子。它基本上是一個線性映射。 – nachocab
這應該是顯而易見的,但這不是一個「R」問題。這是一個關於基本線性代數的問題。 –