楼主: 统计R浪人
3384 5

[问答] R程序运行报错,怎么改都不行,大家帮我看下什么问题 [推广有奖]

  • 0关注
  • 3粉丝

硕士生

98%

还不是VIP/贵宾

-

威望
0
论坛币
33 个
通用积分
4.3144
学术水平
18 点
热心指数
25 点
信用等级
10 点
经验
1987 点
帖子
131
精华
0
在线时间
220 小时
注册时间
2013-5-22
最后登录
2022-9-16

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
rm(list=ls())  #清楚内存
library(Matrix)
rSparseMatrix <- function(nrow, ncol, nnz,
                          rand.x = function(n) runif(nnz, 0,1), ...)
{
  stopifnot((nnz <- as.integer(nnz)) >= 0,
            nrow >= 0, ncol >= 0, nnz <= nrow * ncol)
  sparseMatrix(i = sample(nrow, nnz, replace = TRUE),
               j = sample(ncol, nnz, replace = TRUE),
               x = rand.x(nnz), dims = c(nrow, ncol), ...)
}
nInternalUnits<-100
connectivity<-10
nrow<-nInternalUnits
ncol<-nInternalUnits
nnz<-connectivity
maxVal<-0

    internalWeights<-rSparseMatrix(nrow, ncol, nnz)
    internalWeights[internalWeights!=0]
运行后:
总是提示:<sparse>[ <logic> ] : .M.sub.i.logical() maybe inefficient
这时怎么回事,大家帮看看

二维码

扫码加我 拉你入群

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

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

关键词:运行报错 R程序 Library matrix sparse 程序

沙发
qoiqpwqr 发表于 2013-5-30 23:07:36 |只看作者 |坛友微信交流群
你的程序大概是干嘛的?

使用道具

藤椅
统计R浪人 发表于 2013-5-31 08:53:38 |只看作者 |坛友微信交流群
internalWeights[internalWeights!=0]  想计算稀疏矩阵中的每一个非零元素减一个指定数值

使用道具

板凳
bobguy 发表于 2013-5-31 11:13:56 |只看作者 |坛友微信交流群
There is a much more efficient way to get the NON-ZERO/missing elements out of a sparse matrix. See the program below.

library(Matrix)
rSparseMatrix <- function(nrow, ncol, nnz,
                          rand.x = function(n) runif(nnz, 0,1), ...)
{
  stopifnot((nnz <- as.integer(nnz)) >= 0,
            nrow >= 0, ncol >= 0, nnz <= nrow * ncol)
  sparseMatrix(i = sample(nrow, nnz, replace = TRUE),
               j = sample(ncol, nnz, replace = TRUE),
               x = rand.x(nnz), dims = c(nrow, ncol), ...)

}
set.seed(123)
nInternalUnits<-5000
connectivity<-100
nrow<-nInternalUnits
ncol<-nInternalUnits
nnz<-connectivity
maxVal<-0

internalWeights<-rSparseMatrix(nrow, ncol, nnz)
as.matrix(summary(internalWeights))
internalWeights[internalWeights!=0]


system.time(as.matrix(summary(internalWeights)))
system.time(internalWeights[internalWeights!=0])

使用道具

报纸
统计R浪人 发表于 2013-5-31 14:54:08 |只看作者 |坛友微信交流群
运行后:
还是提示:<sparse>[ <logic> ] : .M.sub.i.logical() maybe inefficient
请问该提示可以忽略吗,会不会产生不良影响啊?

使用道具

地板
bobguy 发表于 2013-6-1 06:27:07 |只看作者 |坛友微信交流群
统计R浪人 发表于 2013-5-31 14:54
运行后:
还是提示:[  ] : .M.sub.i.logical() maybe inefficient
请问该提示可以忽略吗,会不会产生不良 ...
No. AFAIK.

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-28 14:34