如何解决使用lapply在R
我有一组代表5位演讲者的词汇知识的网络。每个发言人都被录制了多次,并且总共有93个网络,大小各不相同。我已经使用lapply()
为93个网络中的每个网络生成了平均路径长度和平均度(k)的数据。该数据的摘要如下所示
head(df1)
# A tibble: 6 x 7
Speaker session path_length mean_k vocab_size subj_session
<chr> <dbl> <dbl> <dbl> <int> <chr>
1 Alex 16 1.07 6.5 7 Alex_16
2 Alex 17 1.04 8.6 9 Alex_17
3 Alex 18 1.1 3.6 4 Alex_18
4 Alex 19 1.19 27.5 34 Alex_19
5 Alex 20 1.25 35.8 47 Alex_20
6 Alex 21 1.15 35.9 42 Alex_21
我现在正尝试使用Watts-Strogatz方法基于这些真实数据生成随机的小世界网络图。对于上面的小标题的第1行,我在igraph
中执行此操作的代码是sample_smallworld(1,7,6.5,0.05,loops = FALSE,multiple = FALSE)
,其中7是网络中的节点数,而6.5是平均度。有了这些数据后,我将使用mean_distance()
来计算数据的平均路径长度。
我尝试使用lapply()
在我的数据的93个项目中运行它:
library(igraph)
sample <- lapply(df1,FUN = function(element) {
element <- as.data.frame(element)
size <- element$vocab_size
nei <- element$mean_k
smallworldnetwork <- sample_smallworld(1,size,nei,multiple = FALSE)
output <- mean_distance(smallworldnetwork,directed = F)
})
但是,我收到以下错误消息:
sample_smallworld(1,size + 1,nei,0.05,循环= FALSE,多个= FALSE)中的错误: 在games.c:2963上:WS游戏:点阵大小至少应为1,值无效
我对lappy()
并不陌生,因此代码可能只是一个错误,但是通过反复试验,我得到sample_smallworld()
不会采用非数字值的印象邻里大小,我想不出办法解决这个问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。