我试图在R中重现以下在Python中创建的函数。
# Python
def square_area(side):
return side * side
results = []
for i in range(1, 10):
x = square_area(i)
results.append(x)
print results
结果
[1, 4, 9, 16, 25, 36, 49, 64, 81]
我在R中的尝试已经。
# R
square_area <- function(side) {
side * side
}
results=list()
for (i in 1:10){
x <- square_area(i)
results[i] = x
}
print(results)
结果
[[1]]
[1] 1
[[2]]
[1] 4
[[3]]
[1] 9
[[4]]
[1] 16
[[5]]
[1] 25
[[6]]
[1] 36
[[7]]
[1] 49
[[8]]
[1] 64
[[9]]
[1] 81
[[10]]
[1] 100
我不知道这样做是否正确,但我需要将结果作为一个列表,以便稍后建立一个线图。这似乎更像是一个有键和值的python字典。如何在R中简单地追加值?
谢谢。
解决方案:
我们可以直接通过做 ^
在…上 vector
(1:10)^2
#[1] 1 4 9 16 25 36 49 64 81 100
如果你需要 list
,只要把它用 as.list
as.list((1:10)^2)