在for循环R中附加值,就像在python中一样
我试图在R中重现Python中创建的以下函数在for循环R中附加值,就像在python中一样,python,r,list,for-loop,Python,R,List,For Loop,我试图在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] [[1]] [1] 1 [[2]] [1] 4 [[3]] [1]
# 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]
[[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
我在R的尝试是:
# R
square_area <- function(side) {
side * side
}
results=list()
for (i in 1:10){
x <- square_area(i)
results[i] = x
}
print(results)
我不知道这是否正确,但我需要将结果作为一个列表,以便稍后在折线图上构建。这看起来更像是一个包含键和值的python字典。如何在R中简单地附加值
谢谢。我们可以通过在
向量上执行^
来直接获得此信息
(1:10)^2
#[1] 1 4 9 16 25 36 49 64 81 100
如果您需要一个列表
,只需用as.list
as.list((1:10)^2)
我们可以通过在向量上执行^
来直接得到这个结果
(1:10)^2
#[1] 1 4 9 16 25 36 49 64 81 100
如果您需要一个列表
,只需用as.list
as.list((1:10)^2)
Python中的列表与R中的向量相同,这是完全错误的
列表可以保存许多不同类型的值,向量不能,就像矩阵一样
在Python中,您可以执行以下操作:
[1, [2, 3.333], "I'm a string bitch!", [1, "hollymolly"]]
在R中,这与向量无关。您可以使用列表来完成此操作。这就是为什么被称为列表
我一直在网络上搜索和你一样的东西,似乎用户没有必要像Pythonistas那样使用列表,最糟糕的是,用户把对象列表的含义和向量混淆了,好像它们在哪里是等价的(FALSE)
R中的向量很像Python中的np.array。这就是为什么R很酷,它不需要一个包来处理矩阵
您可以在特定示例中执行以下操作(阅读注释):
然后,您可以根据需要使用列表中的每个值,就像您刚才需要的绘图一样
希望我能帮忙 Python中的列表与R中的向量相同,这是完全错误的
列表可以保存许多不同类型的值,向量不能,就像矩阵一样
在Python中,您可以执行以下操作:
[1, [2, 3.333], "I'm a string bitch!", [1, "hollymolly"]]
在R中,这与向量无关。您可以使用列表来完成此操作。这就是为什么被称为列表
我一直在网络上搜索和你一样的东西,似乎用户没有必要像Pythonistas那样使用列表,最糟糕的是,用户把对象列表的含义和向量混淆了,好像它们在哪里是等价的(FALSE)
R中的向量很像Python中的np.array。这就是为什么R很酷,它不需要一个包来处理矩阵
您可以在特定示例中执行以下操作(阅读注释):
然后,您可以根据需要使用列表中的每个值,就像您刚才需要的绘图一样
希望我能帮忙 这很好,但我需要学习如何在使用更复杂的函数时将值附加到列表中。这只是一个例子。这个问题描述了我的最终目标@johnred您的尝试也有效。我认为(我在1:10中)有一个拼写错误
谢谢你发现了这个拼写错误。然而,在我看来,结果就像一本python字典。您如何将其作为python列表中的一个数字序列来获取?@johnread Justunlist
results
。i、 .eunlist(结果)
获取一个向量
输出。但是你不会像python中那样得到[]
。要注意术语的不同:python中的list
是R
中的vector
。将向量初始化为results=rep(NA,10)
,这很好,但我需要学习在使用更复杂的函数时如何将值附加到列表中。这只是一个例子。这个问题描述了我的最终目标@johnred您的尝试也有效。我认为(我在1:10中)有一个拼写错误
谢谢你发现了这个拼写错误。然而,在我看来,结果就像一本python字典。您如何将其作为python列表中的一个数字序列来获取?@johnread Justunlist
results
。i、 .eunlist(结果)
获取一个向量
输出。但是你不会像python中那样得到[]
。要注意术语的不同:python中的list
是R
中的vector
。以results=rep(NA,10)