全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
5680 5
2016-12-07
我自定义了一个函数,代码如下:test.sum<-function(x,z){y<-x+z}
for(z in 1:5){
for(x in 1:z){
y<-test.sum(x,z)
a<-list(x=x,z=z,y=y}}
我想将结果输出为三列,分别是x,z,y。可是结果至显示最后一次循环的结果。求问各位大神,代码应该怎样修改?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-12-7 10:01:42
你这种写法是C语言风格的。R语言风格是写成向量函数形式:
sapply(X=1:5,FUN=function(x) sapply(X=1:x,FUN=function(z) list(x=x,z=z,y=x+z)))
利用向量函数的返回值是整体返回的特点。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-12-7 10:29:07
nuomin 发表于 2016-12-7 10:01
你这种写法是C语言风格的。R语言风格是写成向量函数形式:
sapply(X=1:5,FUN=function(x) sapply(X=1:x,FU ...
这样会输出好几个矩阵。不能输出为列表形式或数据框形式吗?因为我想对y的部分结果进行累加求和。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2022-8-9 16:52:37
我也想知道
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2022-8-10 12:45:43
复制代码


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2022-8-10 12:50:56
还有一种看起来“高大上”点的方法
复制代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群