小编ate*_*rst的帖子

tidygraph和igraph-从数据框差异构建图

我可以从两个数据帧在igraph中构建图形对象,而不会出现问题。当我尝试在tidygraph中执行相同操作时,会出现错误。让我示范一下。首先,我加载源数据(来自留言板的数据):

library(dplyr)
library(tidyr)
library(tidygraph)
library(lubridate)
library(iterpc)
library(igraph)

df <- data.frame(author_id = c(2,4,8,16,4,8,2,256,512,8),
             topic_id = c(101,101,101,101,301,301,501,501,501,501),
             time = as.POSIXct(c("2011-08-16 20:20:11", "2011-08-16 21:10:00", "2011-08-17 06:30:10",
                                 "2011-08-17 10:08:32", "2011-08-20 22:23:01","2011-08-20 23:03:03",
                                 "2011-08-25 17:05:01", "2011-08-25 19:15:10",  "2011-08-25 20:07:11",
                                 "2011-08-25 23:59:59")),
             vendor = as.logical(c("FALSE", "FALSE", "TRUE", "FALSE", "FALSE",
                                   "TRUE", "FALSE", "FALSE", "FALSE", "TRUE"))) 
Run Code Online (Sandbox Code Playgroud)

接下来,我创建一个唯一的节点列表(将消息发布在留言板上的人):

node <- df %>% distinct(author_id, vendor) %>% rename(id = author_id) %>% mutate(vendor = as.numeric(vendor))
Run Code Online (Sandbox Code Playgroud)

然后,我的边缘列表(通过讨论线程(主题)联系的人):

edge <- df %>% 
  group_by(topic_id) %>% 
  do(data.frame(getall(iterpc(table(.$author_id), 2, replace =TRUE)))) %>%
  filter(X1 != X2) %>% rename(from …
Run Code Online (Sandbox Code Playgroud)

r igraph tidygraph

4
推荐指数
1
解决办法
491
查看次数

合并两个数据集

我创建一个节点列表如下:

name <- c("Joe","Frank","Peter")
city <- c("New York","Detroit","Maimi")
age <- c(24,55,65)
node_list <- data.frame(name,age,city)

node_list    
   name age     city
1   Joe  24 New York
2 Frank  55  Detroit
3 Peter  65    Maimi
Run Code Online (Sandbox Code Playgroud)

然后我创建一个边缘列表如下:

from <- c("Joe","Frank","Peter","Albert")
to <- c("Frank","Albert","James","Tony")
to_city <- c("Detroit","St. Louis","New York","Carson City")
edge_list <- data.frame(from,to,to_city)

edge_list
    from     to     to_city
1    Joe  Frank     Detroit
2  Frank Albert   St. Louis
3  Peter  James    New York
4 Albert   Tony Carson City
Run Code Online (Sandbox Code Playgroud)

请注意,节点列表和边列表中的名称不会重叠100%.我想创建一个包含所有名称的主节点列表,同时捕获城市信息.这是我的dplyr尝试这样做:

new_node <- edge_list %>%
  gather("from_to", "name", from, to) %>% …
Run Code Online (Sandbox Code Playgroud)

r dplyr

1
推荐指数
1
解决办法
49
查看次数

调试沉积物动力学的旧 Fortran 代码

我正在查看旧扫描论文中的一些 Fortran 代码。扫描质量不太好,所以我可能复印错了。我尝试使用在线 Fortran 编译器运行它,但它失败了。由于不熟悉 Fortran,我想知道是否有人可以指出语法没有意义的地方?该代码来自一篇关于沉积物动力学的论文:

Komar, PD 和 Miller, MC,1975。关于波浪和单向流下沉积物运动阈值的比较以及阈值实际评估的讨论:答复。沉积研究杂志,45(1)。

PROGRAM TSHOLD 
REAL LI, LO
G = 981.0 
PIE = 3.1416 
RHOW  = 1.00 
READ (6O,1) DIAM, RHOS
1 FORMAT (2X, F6.3,2X, F5.3) 
IF(DIAM .LT. 0.05) GO TO 5 
A = 0.463 * PIE 
B = 0.25 
GO TO 7 
5 A = 0.21 
B = 0.50 
7 PWR = 1.0 / (2.0 - B) 
FAC = (A * (RHOS - RHOW) * G/(RHOW * PIE**B))**PWR
FAC1 = FAC …
Run Code Online (Sandbox Code Playgroud)

fortran

0
推荐指数
1
解决办法
95
查看次数

标签 统计

r ×2

dplyr ×1

fortran ×1

igraph ×1

tidygraph ×1