楼主: toulang
1677 4

求助,请教一个简单的循环 [推广有奖]

  • 0关注
  • 0粉丝

高中生

20%

还不是VIP/贵宾

-

威望
0
论坛币
13 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
247 点
帖子
24
精华
0
在线时间
11 小时
注册时间
2009-2-17
最后登录
2014-5-5

楼主
toulang 发表于 2009-5-25 12:35:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

x<-c(1,2,2,1,2,1,2,1,1)
x<-as.matrix(x)
x1<-x[x[,1]==1,]
x2<-x[x[,1]==2,]

我想用循环来实现上述步骤,类似于下面的:
“for(i in 1:2)
{
s<-x[x[,1]==i,]
}
错误于s <- x[x[, 1] == i, ] : 找不到对象's'。”
请问我该怎么实现这个循环?如果定义S,该怎样定义?

各位大虾帮帮忙!先谢过了

二维码

扫码加我 拉你入群

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

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

关键词:求助 请教

沙发
jo3vul31l3 发表于 2009-5-27 16:35:00

不完全正確的解法:

x<-c(1,2,2,1,2,1,2,1,1)

s<-data.frame(NULL)

for(i in 1:2){
  for(j in c(1:sum(x==i)))
    s[i,j]<-i
}
s

藤椅
snakepointid 发表于 2015-6-27 15:46:25
你这个只要先给s赋空值就行了,s<-c();
但是你这个代码实在是有点不效率,不漂亮。
x1<-x[which(x==1)]
x2<-x[which(x==2)]

板凳
ryoeng 在职认证  发表于 2015-6-27 19:02:08
提示: 作者被禁止或删除 内容自动屏蔽

报纸
snakepointid 发表于 2015-6-28 09:49:23
ryoeng 发表于 2015-6-27 19:02
更短、更简洁。
恩恩 你的这个更简洁

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-30 09:54