curriculum_graph_from_list {CurricularAnalytics}R Documentation

Create Curriculum Graph Object

Description

Generates a curriculum graph from a node and edge list.

Usage

curriculum_graph_from_list(node_list, edge_list)

Arguments

node_list

Dataframe with an 'id' column for each node and a 'term' column specifying which term the course is to be taken in.

edge_list

Dataframe with two columns 'from' and 'to' specifying directed edges starting at 'from' nodes directed towards 'to' nodes. Entries must use node ids from node_list.

Value

A list that contains the following:

node_list

A dataframe of course nodes containing their id, term, blocking factor (bf), delay factor (df), centrality (cf), and cruciality (sc)

edge_list

A dataframe with two columns 'from' and 'to' specifying directed edges starting at 'from' nodes directed towards 'to' nodes.

network

Igraph network object representing the curriculum graph

sc_total

Total structural complexity of the curriculum graph

bf_total

Total blocking factor of the curriculum graph

df_total

Total delay factor of the curriculum graph

Author(s)

Daniel Krasnov

References

Heileman, Gregory L, Chaouki T Abdallah, Ahmad Slim, and Michael Hickman. 2018. “Curricular Analytics: A Framework for Quantifying the Impact of Curricular Reforms and Pedagogical Innovations.” arXiv Preprint arXiv:1811.09676.

Examples

edge_list <- data.frame(from = c(1, 3), to = c(3, 4))
# courses in node list must be placed sequentially in term order to be properly displayed
node_list <-
data.frame(
 id = 1:4,
 label = c("MATH 100", "DATA 101", "MATH 101", "MATH 221"),
 term = c(1, 1, 2, 2)
)
C <- curriculum_graph_from_list(node_list,edge_list)
plot_curriculum_graph(C)

[Package CurricularAnalytics version 1.0.0 Index]