楼主: luo000tuo
1843 9

[问答] 一個R的編程問題。 [推广有奖]

  • 0关注
  • 0粉丝

硕士生

24%

还不是VIP/贵宾

-

威望
0
论坛币
427 个
通用积分
10.3025
学术水平
0 点
热心指数
1 点
信用等级
0 点
经验
2716 点
帖子
52
精华
0
在线时间
191 小时
注册时间
2009-9-17
最后登录
2022-11-13

楼主
luo000tuo 发表于 2016-4-10 21:01:37 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
一個vector,如何根據各個元素的符號進行分組,例如從第一個到第8個元素都大於0,則第一個到第八個分到同一組,然後如果第九個和第十個都小於0,那麼9 10 則分成一組,以此類推。
二维码

扫码加我 拉你入群

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

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

关键词:Vector CTO ect VEC 如何 元素

回帖推荐

yyt0415 发表于9楼  查看完整内容

复制黏贴的在审核,截个图给你吧

yyt0415 发表于5楼  查看完整内容

> x=runif(10,-1,1) > x [1] -0.8645572 -0.6380527 -0.2739525 0.2951239 0.7972818 0.4300227 [7] 0.7396441 -0.1908709 0.4193186 -0.4487091 > group=ifelse(x>0,"1","0") > group [1] "0" "0" "0" "1" "1" "1" "1" "0" "1" "0" > split(x,group) $`0` [1] -0.8645572 -0.6380527 -0.2739525 -0.1908709 -0.4487091 $`1` [1] 0.2951239 0.7972818 0.4300227 0.7396441 0.4193186 > lapply(split(x,gro ...

沙发
yyt0415 发表于 2016-4-10 21:11:54
> x=runif(10,-1,1)
> x
[1] -0.826434863 -0.682567422  0.663395870  0.341920905  0.975422718
[6] -0.004661798 -0.113293662  0.669064062 -0.227924711 -0.787234876
> group=ifelse(x>0,"1","0")
> group
[1] "0" "0" "1" "1" "1" "0" "0" "1" "0" "0"
已有 2 人评分经验 论坛币 收起 理由
李会超 + 60 热心帮助其他会员
jiangbeilu + 10 鼓励积极发帖讨论

总评分: 经验 + 60  论坛币 + 10   查看全部评分

藤椅
ck9532 发表于 2016-4-10 21:15:56 来自手机
用 cut(vec, breaks=c(...))
已有 2 人评分经验 论坛币 收起 理由
李会超 + 60 热心帮助其他会员
jiangbeilu + 10 鼓励积极发帖讨论

总评分: 经验 + 60  论坛币 + 10   查看全部评分

板凳
luo000tuo 发表于 2016-4-10 21:18:38
yyt0415 发表于 2016-4-10 21:11
> x=runif(10,-1,1)
> x
[1] -0.826434863 -0.682567422  0.663395870  0.341920905  0.975422718
非常感謝你

我少說了一個條件,就是例如,你的分組,前兩個0是一組,後面三個1是一組,可是接下來我要對不同的組求組內均值和組內range,這個要怎麼弄?

再次感謝

报纸
yyt0415 发表于 2016-4-10 21:24:54
> x=runif(10,-1,1)
> x
[1] -0.8645572 -0.6380527 -0.2739525  0.2951239  0.7972818  0.4300227
[7]  0.7396441 -0.1908709  0.4193186 -0.4487091
> group=ifelse(x>0,"1","0")
> group
[1] "0" "0" "0" "1" "1" "1" "1" "0" "1" "0"
> split(x,group)
$`0`
[1] -0.8645572 -0.6380527 -0.2739525 -0.1908709 -0.4487091

$`1`
[1] 0.2951239 0.7972818 0.4300227 0.7396441 0.4193186

> lapply(split(x,group),mean)
$`0`
[1] -0.4832285

$`1`
[1] 0.5362782
已有 1 人评分论坛币 收起 理由
jiangbeilu + 10 鼓励积极发帖讨论

总评分: 论坛币 + 10   查看全部评分

地板
yyt0415 发表于 2016-4-10 21:25:23
luo000tuo 发表于 2016-4-10 21:18
非常感謝你

我少說了一個條件,就是例如,你的分組,前兩個0是一組,後面三個1是一組,可是接下來我要 ...
> x=runif(10,-1,1)
> x
[1] -0.8645572 -0.6380527 -0.2739525  0.2951239  0.7972818  0.4300227
[7]  0.7396441 -0.1908709  0.4193186 -0.4487091
> group=ifelse(x>0,"1","0")
> group
[1] "0" "0" "0" "1" "1" "1" "1" "0" "1" "0"
> split(x,group)
$`0`
[1] -0.8645572 -0.6380527 -0.2739525 -0.1908709 -0.4487091

$`1`
[1] 0.2951239 0.7972818 0.4300227 0.7396441 0.4193186

> lapply(split(x,group),mean)
$`0`
[1] -0.4832285

$`1`
[1] 0.5362782
已有 1 人评分经验 收起 理由
李会超 + 60 热心帮助其他会员

总评分: 经验 + 60   查看全部评分

7
luo000tuo 发表于 2016-4-10 21:37:03
yyt0415 发表于 2016-4-10 21:25
> x=runif(10,-1,1)
> x
[1] -0.8645572 -0.6380527 -0.2739525  0.2951239  0.7972818  0.4300227
大神,不好意思,我可能還是沒有把問題說明白,不要生氣

是這樣的,按照你第一個回覆裡的來說,我是要這樣分組,前面兩個0第一組,後面3個1是第二組,然後再後面兩個0是第三組,然後緊跟著的那個1是第四組,最後兩個0是第5組,然後每組求平均和range

非常感謝了。

8
yyt0415 发表于 2016-4-10 21:55:12
看下面截图的吧

9
yyt0415 发表于 2016-4-10 21:59:34
luo000tuo 发表于 2016-4-10 21:37
大神,不好意思,我可能還是沒有把問題說明白,不要生氣

是這樣的,按照你第一個回覆裡的來說,我是要 ...
复制黏贴的在审核,截个图给你吧

QQ截图20160410215357.png (23.39 KB)

QQ截图20160410215357.png

10
luo000tuo 发表于 2016-4-11 08:19:12
yyt0415 发表于 2016-4-10 21:59
复制黏贴的在审核,截个图给你吧
太感謝你了。。我r剛學不久,水平比較低,謝謝啦。

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

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