全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
4558 9
2017-04-14
写了一个下面的这个R指令,其中的bx1到bx10的值前面都计算出来了,然后想生成下面这个fbe的向量出来,fbe里面应该就有这十个数的。
fbe<-c(bx1,bx2,bx3,bx4,bx5,bx6,bx7,bx8,bx9,bx10)
但是当跑完了后,却出来了下面这个结果:
> fbe
[1] 0.10432 0.10432 0.10432 0.10432 0.10432 0.10432 0.10432 0.10432

只有8个数,R好像自动就把其中两个值给去掉了>.<

后又检查了一下,发现问题出现在这里:
> bx10=if(b1[10]>b2)b2;if(b1[10]<b2&b1[10]>=0)b1[10];if(b1[10]<0)0
[1] 0.06572
> bx10
NULL
明明 bx10 计算为0.06572,可是再输入 bx10却成了 “NULL”。 同样的,bx6=0, 却也是显示成了“NULL”, 然后这两个数在 fbe 里面就直接去掉了,所以才只剩下了8个数。

请问前辈们,如何才能让 bx6 和 bx10的数值都不显示为null 呢,这到底怎么回事?

感谢各位前辈^^

二维码

扫码加我 拉你入群

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

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

全部回复
2017-4-14 17:07:19
> fbe <- c(0.10432,0,0,0.10432,0.10432,0.10432,0.10432,0.10432,0.10432,0.10432)
> fbe
[1] 0.10432 0.00000 0.00000 0.10432 0.10432 0.10432 0.10432 0.10432 0.10432 0.10432

i still get zeros back.

二维码

扫码加我 拉你入群

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

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

2017-4-16 12:53:37
jpang 发表于 2017-4-14 17:07
> fbe  fbe
[1] 0.10432 0.00000 0.00000 0.10432 0.10432 0.10432 0.10432 0.10432 0.10432 0.10432
我这边还是很奇怪,检查了前面的数,其中的bx6=0, 显示为 null, 然后再输入一次 fbe,就还是把这个bx6给过滤掉了,又只剩下8个数在fbe里头了>.< 肿么回事呢。。。
二维码

扫码加我 拉你入群

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

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

2017-4-16 12:57:56
jpang 发表于 2017-4-14 17:07
> fbe  fbe
[1] 0.10432 0.00000 0.00000 0.10432 0.10432 0.10432 0.10432 0.10432 0.10432 0.10432
b1=a1-fae
b2=fb*fr
bx1=if(b1[1]>b2)b2;if(b1[1]<b2&b1[1]>=0)b1[1];if(b1[1]<0)0
bx2=if(b1[2]>b2)b2;if(b1[2]<b2&b1[2]>=0)b1[2];if(b1[2]<0)0
bx3=if(b1[3]>b2)b2;if(b1[3]<b2&b1[3]>=0)b1[3];if(b1[3]<0)0
bx4=if(b1[4]>b2)b2;if(b1[4]<b2&b1[4]>=0)b1[4];if(b1[4]<0)0
bx5=if(b1[5]>b2)b2;if(b1[5]<b2&b1[5]>=0)b1[5];if(b1[5]<0)0
bx6=if(b1[6]>b2)b2;if(b1[6]<b2&b1[6]>=0)b1[6];if(b1[6]<0)0
bx7=if(b1[7]>b2)b2;if(b1[7]<b2&b1[7]>=0)b1[7];if(b1[7]<0)0
bx8=if(b1[8]>b2)b2;if(b1[8]<b2&b1[8]>=0)b1[8];if(b1[8]<0)0
bx9=if(b1[9]>b2)b2;if(b1[9]<b2&b1[9]>=0)b1[9];if(b1[9]<0)0
bx10=if(b1[10]>b2)b2;if(b1[10]<b2&b1[10]>=0)b1[10];if(b1[10]<0)0
fbe<-c(bx1,bx2,bx3,bx4,bx5,bx6,bx7,bx8,bx9,bx10)

这是前面的计算过程,后来我一一检查了一下,除了bx6=null, bx10=0.06572之外,其它的数全部都是0.10432, 可不知为何,在最后一步,合成 fbe 的时候,却把 bx6 和 bx10都给去掉了。。只剩下了0.10432的数值。。真不知道这是怎么回事。。
二维码

扫码加我 拉你入群

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

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

2017-4-16 13:09:49
> bx10=if(b1[10]>b2)b2;if(b1[10]<b2&b1[10]>=0)b1[10];if(b1[10]<0)0
[1] 0.06572
> bx10
NULL
如上面这个结果所示,明明 bx10 计算出来的结果是0.06572, 可是在输入 bx10后,出来的结果却是 “NULL” 我想问题主要出在这里。就是不明白为什么会这样。。
二维码

扫码加我 拉你入群

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

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

2017-4-16 13:11:21
虽然看不到你的数据,但我猜你的赋值有问题,试试这样改
复制代码
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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