From d74215595945c6b48166e2e066dfc83f4a6f1208 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kirill=20M=C3=BCller?= Date: Sun, 13 Sep 2026 18:23:12 +0000 Subject: [PATCH 1/3] ci: Document with a patched roxygen2 that keeps the sentence gap commonmark discards the whitespace a line break stands for, so roxygen prose written one sentence per line loses the gap between sentences in the rendered help. Only the text renderer is affected, which is what `?topic` shows. A new composite action installs roxygen2 from upstream with the R/ part of krlmlr/roxygen2@f-sentence-spacing applied on top, and runs just before the Roxygenize step. It shallow-clones upstream, fetches the branch, applies the diff restricted to R/ so conflicts in the test files cannot fail it, and aborts rather than silently installing an unpatched build. It then asserts that what it installed really carries the patch. Config/roxygen2/version becomes 8.1.0.9100. The .9100 suffix distinguishes a patched build from upstream's own .9000 development builds; if upstream moves, the x.y.z part follows it and the suffix stays. DESCRIPTION is DCF and cannot carry a comment, so the explanation lives in a Config/cynkra/roxygen2 field. This is a separate decision from the line-break reformatting below it, and is kept in its own pull request so it can be taken or left on its own. Without it, the reformatting simply renders as it does today, with one space between sentences. Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01WWhverMTZZKgEpUuTK117m --- .github/workflows/R-CMD-check.yaml | 3 + .github/workflows/roxygen2-fork/action.yml | 105 +++++++++++++++++++++ DESCRIPTION | 9 +- 3 files changed, 116 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/roxygen2-fork/action.yml diff --git a/.github/workflows/R-CMD-check.yaml b/.github/workflows/R-CMD-check.yaml index b45308a..d1b889d 100644 --- a/.github/workflows/R-CMD-check.yaml +++ b/.github/workflows/R-CMD-check.yaml @@ -173,6 +173,9 @@ jobs: with: base: ${{ inputs.ref || github.head_ref }} + - name: Install roxygen2 from the fork branch + uses: ./.github/workflows/roxygen2-fork + - name: Roxygenize the documentation id: roxygenize continue-on-error: true diff --git a/.github/workflows/roxygen2-fork/action.yml b/.github/workflows/roxygen2-fork/action.yml new file mode 100644 index 0000000..e020c6e --- /dev/null +++ b/.github/workflows/roxygen2-fork/action.yml @@ -0,0 +1,105 @@ +name: "Action to install roxygen2 from a fork branch" +description: > + This action installs roxygen2 with only the `R/` part of a fork branch applied + on top of upstream, and stamps the result as a `.9100` build so that a + package's `Config/roxygen2/version` says which roxygen2 documented it. + +inputs: + upstream: + description: "Repository to install, in owner/repo form" + required: false + default: "r-lib/roxygen2" + fork: + description: "Repository holding the branch to apply, in owner/repo form" + required: false + default: "krlmlr/roxygen2" + branch: + description: "Branch whose `R/` changes are applied on top of upstream" + required: false + default: "f-sentence-spacing" + +runs: + using: "composite" + steps: + - name: Install roxygen2 with the fork's R changes + run: | + ## -- Install roxygen2 from a fork branch -- + set -euo pipefail + + upstream="${{ inputs.upstream }}" + fork="${{ inputs.fork }}" + branch="${{ inputs.branch }}" + + workdir="$(mktemp -d)" + trap 'rm -rf "$workdir"' EXIT + + # Upstream at its tip: this is the code that gets installed, so the + # build tracks upstream rather than a fork that may be stale. Depth 50 + # is enough to reach the branch point without fetching years of history. + git clone --depth 50 "https://github.com/${upstream}.git" "$workdir/pkg" + cd "$workdir/pkg" + echo "upstream ${upstream}@$(git rev-parse --short HEAD)" + + git fetch --depth 50 "https://github.com/${fork}.git" "$branch" + echo "fork ${fork}@${branch} $(git rev-parse --short FETCH_HEAD)" + + # Diff from the branch point, not from the tip's parent: the branch + # carries several commits and a tip-only diff would apply just the last. + if ! base="$(git merge-base HEAD FETCH_HEAD)"; then + echo "::error title=roxygen2 fork::No common ancestor within 50 commits of ${upstream} and ${fork}@${branch}." + echo "Rebase the branch on upstream, or raise the fetch depth here." + exit 1 + fi + + # Only `R/`. The branch also carries tests, NEWS and a regenerated + # `man/`, none of which this build runs, and all of which are far more + # likely to conflict as upstream moves. The R change is deliberately + # shaped to keep this patch small: one line in `R/markdown.R`, and + # everything else in a file of its own that upstream will never create, + # because a patch that adds a whole file cannot conflict. + git diff "$base" FETCH_HEAD -- R/ > "$workdir/R.patch" + + if [ ! -s "$workdir/R.patch" ]; then + echo "::error title=roxygen2 fork::${fork}@${branch} changes nothing under R/." + echo "Either the branch has landed upstream and this action should be removed," + echo "or the branch name is wrong." + exit 1 + fi + + # --3way so the patch still applies when upstream has moved around it. + # A conflict is a hard stop: installing an unpatched roxygen2 would + # regenerate every man/ file without the change, and the diff would + # look like unrelated documentation churn rather than a failed install. + if ! git apply --3way --verbose "$workdir/R.patch"; then + echo "::error title=roxygen2 fork::Could not apply ${fork}@${branch} onto ${upstream}." + echo "This is usually an ordinary merge conflict: upstream has changed the same lines." + echo "Rebase the branch on upstream and push it again." + exit 1 + fi + + # Stamp the build. roxygen2 writes its own version into a package's + # Config/roxygen2/version, so this is what makes it visible that the + # documentation was generated with the patch: upstream numbers its + # development builds x.y.z.9000, and this takes the same x.y.z with + # .9100. Derived from upstream's own version so it follows automatically + # when upstream moves. + Rscript -e ' + d <- read.dcf("DESCRIPTION") + v <- d[1, "Version"] + d[1, "Version"] <- sub("^([0-9]+[.][0-9]+[.][0-9]+).*$", "\1.9100", v) + write.dcf(d, "DESCRIPTION", keep.white = colnames(d)) + cat("stamped", v, "->", read.dcf("DESCRIPTION")[1, "Version"], "\n") + ' + + R CMD INSTALL --no-docs . + + # Fail here rather than three steps later with a puzzling man/ diff. + Rscript -e ' + v <- as.character(packageVersion("roxygen2")) + patched <- exists("mdxml_keep_sentence_spacing", envir = asNamespace("roxygen2")) + cat("roxygen2", v, "patched:", patched, "\n") + if (!grepl("[.]9100$", v) || !patched) { + stop("roxygen2 was not installed from the fork branch.", call. = FALSE) + } + ' + shell: bash diff --git a/DESCRIPTION b/DESCRIPTION index e091cd0..210739e 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -37,4 +37,11 @@ Encoding: UTF-8 LazyData: true Roxygen: list(markdown = TRUE) Config/testthat/edition: 3 -Config/roxygen2/version: 8.1.0.9000 +Config/roxygen2/version: 8.1.0.9100 +Config/cynkra/roxygen2: The .9100 suffix on Config/roxygen2/version marks a patched + roxygen2, not an upstream development build. Upstream numbers its own + development builds x.y.z.9000; the build that documents this package takes the + same x.y.z and uses .9100. It is upstream plus the sentence-spacing fix from + krlmlr/roxygen2@f-sentence-spacing, installed by + .github/workflows/roxygen2-fork. Regenerating man/ with a stock roxygen2 drops + the gap after every sentence that ends a line. From e1a0b87e4e0637b6f9bacaf4ff5c0a28f3cc6576 Mon Sep 17 00:00:00 2001 From: Claude Date: Sun, 13 Sep 2026 22:08:18 +0000 Subject: [PATCH 2/3] fix(ci): Stamp the roxygen2 version with a backreference, not an octal escape The version stamp wrote the replacement as "\1". R parses that as the octal escape for \001, not as a regex backreference, so DESCRIPTION ended up with a malformed version and R CMD INSTALL aborted with "Malformed package version". Every job that installs roxygen2 through this action failed there. The replacement is now "\\1", verified to stamp 8.1.0.9000 to 8.1.0.9100. The post-install guard asserted only the .9100 suffix, and the corrupt "\001.9100" satisfies that too, which is why the bug survived the check meant to catch it. The guard now asserts the whole x.y.z.9100 shape, and passes inherits = FALSE to exists(). Co-Authored-By: Claude Opus 5 Claude-Session: https://claude.ai/code/session_01WWhverMTZZKgEpUuTK117m --- .github/workflows/roxygen2-fork/action.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/roxygen2-fork/action.yml b/.github/workflows/roxygen2-fork/action.yml index e020c6e..eb5ea1f 100644 --- a/.github/workflows/roxygen2-fork/action.yml +++ b/.github/workflows/roxygen2-fork/action.yml @@ -86,7 +86,7 @@ runs: Rscript -e ' d <- read.dcf("DESCRIPTION") v <- d[1, "Version"] - d[1, "Version"] <- sub("^([0-9]+[.][0-9]+[.][0-9]+).*$", "\1.9100", v) + d[1, "Version"] <- sub("^([0-9]+[.][0-9]+[.][0-9]+).*$", "\\1.9100", v) write.dcf(d, "DESCRIPTION", keep.white = colnames(d)) cat("stamped", v, "->", read.dcf("DESCRIPTION")[1, "Version"], "\n") ' @@ -96,9 +96,12 @@ runs: # Fail here rather than three steps later with a puzzling man/ diff. Rscript -e ' v <- as.character(packageVersion("roxygen2")) - patched <- exists("mdxml_keep_sentence_spacing", envir = asNamespace("roxygen2")) + patched <- exists("mdxml_keep_sentence_spacing", envir = asNamespace("roxygen2"), inherits = FALSE) cat("roxygen2", v, "patched:", patched, "\n") - if (!grepl("[.]9100$", v) || !patched) { + # Assert the whole shape, not just the suffix: a malformed stamp such as + # "\001.9100" also ends in .9100, which is how the escaping bug in this + # very expression went unnoticed until CI refused to install the result. + if (!grepl("^[0-9]+[.][0-9]+[.][0-9]+[.]9100$", v) || !patched) { stop("roxygen2 was not installed from the fork branch.", call. = FALSE) } ' From 89d2dd94bcc78306385f327d23d804f6890c7d68 Mon Sep 17 00:00:00 2001 From: krlmlr Date: Mon, 14 Sep 2026 05:47:12 +0000 Subject: [PATCH 3/3] chore: Auto-update from GitHub Actions Run: https://github.com/igraph/igraphdata/actions/runs/34810786351 --- man/Koenigsberg.Rd | 4 ++-- man/UKfaculty.Rd | 10 +++++----- man/USairports.Rd | 18 +++++++++--------- man/enron.Rd | 24 ++++++++++++------------ man/foodwebs.Rd | 30 +++++++++++++++--------------- man/immuno.Rd | 4 ++-- man/karate.Rd | 28 ++++++++++++++-------------- man/kite.Rd | 4 ++-- man/lesmis.Rd | 2 +- man/macaque.Rd | 8 ++++---- man/netzschleuder.Rd | 10 +++++----- man/rfid.Rd | 10 +++++----- man/yeast.Rd | 10 +++++----- 13 files changed, 81 insertions(+), 81 deletions(-) diff --git a/man/Koenigsberg.Rd b/man/Koenigsberg.Rd index cb2e263..a36d5b5 100644 --- a/man/Koenigsberg.Rd +++ b/man/Koenigsberg.Rd @@ -19,13 +19,13 @@ Koenigsberg } \description{ The Seven Bridges of Koenigsberg is a notable historical problem in mathematics. -Its negative resolution by Leonhard Euler in 1735 laid the foundations of graph theory and presaged the idea of topology. + Its negative resolution by Leonhard Euler in 1735 laid the foundations of graph theory and presaged the idea of topology. The city of Koenigsberg in Prussia (now Kaliningrad, Russia) was set on both sides of the Pregel River, and included two large islands which were connected to each other and the mainland by seven bridges The problem was to find a walk through the city that would cross each bridge once and only once. -The islands could not be reached by any route other than the bridges, + The islands could not be reached by any route other than the bridges, and every bridge must have been crossed completely every time (one could not walk half way onto the bridge and then turn around and later cross the other half from the other side). diff --git a/man/UKfaculty.Rd b/man/UKfaculty.Rd index 04c2215..f6a26a4 100644 --- a/man/UKfaculty.Rd +++ b/man/UKfaculty.Rd @@ -10,7 +10,7 @@ and edge attribute \sQuote{weight}, i.e. the graph is weighted. This dataset is licensed under a Creative Commons Attribution-Share Alike 2.0 UK: England & Wales License, see \url{http://creativecommons.org/licenses/by-sa/2.0/uk/} for details. -Please cite the reference below if you use this dataset. + Please cite the reference below if you use this dataset. } \source{ See reference below. @@ -21,12 +21,12 @@ UKfaculty \description{ The personal friendship network of a faculty of a UK university, consisting of 81 vertices (individuals) and 817 directed and weighted connections. -The school affiliation of each individual is stored as a vertex attribute. -This dataset can serve as a testbed for community detection algorithms. + The school affiliation of each individual is stored as a vertex attribute. + This dataset can serve as a testbed for community detection algorithms. } \references{ Nepusz T., Petroczi A., Negyessy L., Bazso F.: Fuzzy communities and the concept of bridgeness in complex networks. -Physical Review E 77:016107, 2008. -\doi{10.1103/PhysRevE.77.016107} + Physical Review E 77:016107, 2008. + \doi{10.1103/PhysRevE.77.016107} } \keyword{datasets} diff --git a/man/USairports.Rd b/man/USairports.Rd index 8a70d57..6c4f191 100644 --- a/man/USairports.Rd +++ b/man/USairports.Rd @@ -6,8 +6,8 @@ \title{US airport network, 2010 December} \format{ A directed \code{igraph} graph object, with multiple edges. -It has a \sQuote{name} graph attribute, and several vertex and edge attributes. -The vertex attributes: + It has a \sQuote{name} graph attribute, and several vertex and edge attributes. + The vertex attributes: \describe{ \item{name}{Symbolic vertex name, this is the three letter IATA airport code.} \item{City}{City and state, where the airport is located.} @@ -17,7 +17,7 @@ The vertex attributes: Edge attributes: \describe{ \item{Carrier}{Name of the airline. -The network includes both domestic and international carriers that performed at least one flight in December of 2010.} + The network includes both domestic and international carriers that performed at least one flight in December of 2010.} \item{Departures}{The number of departures (for a given airline and aircraft type.} \item{Seats}{The total number of seats available on the flights carried out by a given airline, using a given aircraft type.} \item{Passengers}{The total number of passangers on the flights carried out by a given airline, using a given aircraft type.} @@ -27,18 +27,18 @@ The network includes both domestic and international carriers that performed at } \source{ Most of this information was downloaded from The Research and Innovative Technology Administration (RITA). -See \url{http://www.rita.dot.gov/about_rita/} for details. -The airport position information was collected from Wikipedia and other public online sources. + See \url{http://www.rita.dot.gov/about_rita/} for details. + The airport position information was collected from Wikipedia and other public online sources. } \usage{ USairports } \description{ The network of passanger flights between airports in the United States. -The data set was compiled based on flights in 2010 December. -This network is directed and edge directions correspond to flight directions. -Each edge is specific to a single carrier aircraft type. -Multiple carriers between the same two airports are denoted by multiple edges. + The data set was compiled based on flights in 2010 December. + This network is directed and edge directions correspond to flight directions. + Each edge is specific to a single carrier aircraft type. + Multiple carriers between the same two airports are denoted by multiple edges. See information about the included meta-data below. } diff --git a/man/enron.Rd b/man/enron.Rd index abaab97..e64c8f9 100644 --- a/man/enron.Rd +++ b/man/enron.Rd @@ -11,30 +11,30 @@ Graph attributes: \itemize{ \item \sQuote{LDC_names} The names of the 32 LDC catagories the emails are classfied into by Michael W. Berry (\url{http://www.cis.jhu.edu/~parky/Enron/Anno_Topic_exp_LDC.pdf}) \item \sQuote{LDC_desc} Longer descriptions of the 32 LDC categories. -\item \sQuote{Citation} Additionally, see also the references below. -\item \sQuote{name} + \item \sQuote{Citation} Additionally, see also the references below. + \item \sQuote{name} } Vertex attributes: \itemize{ \item \sQuote{Email} Email address. -\item \sQuote{Name} Real name. -\item \sQuote{Note} E.g. position at Enron. -} + \item \sQuote{Name} Real name. + \item \sQuote{Note} E.g. position at Enron. + } Edge attributes: \itemize{ \item \sQuote{Time} When the email was sent. -Note that some time labels are from 1979, + Note that some time labels are from 1979, these are certainly wrong and you might want to remove them before analyses that include time. -\item \sQuote{Reciptype} Recipient type, \sQuote{to}, \sQuote{cc} or \sQuote{bcc}. -\item \sQuote{Topic} Assigned based on 3-means clustering of randomly selected 3,120 out of all 125,409 messages, + \item \sQuote{Reciptype} Recipient type, \sQuote{to}, \sQuote{cc} or \sQuote{bcc}. + \item \sQuote{Topic} Assigned based on 3-means clustering of randomly selected 3,120 out of all 125,409 messages, then NN classification for the whole corpus. -Note that topic 0 means an outlier, e.g., too few words or all meaningless numbers in the message body. -\item \sQuote{LDC_topic} Assigned based on Michael W. Berry's 2001 \dQuote{Annotated (by Topic) Enron Email Data Set.} + Note that topic 0 means an outlier, e.g., too few words or all meaningless numbers in the message body. + \item \sQuote{LDC_topic} Assigned based on Michael W. Berry's 2001 \dQuote{Annotated (by Topic) Enron Email Data Set.} (\url{http://www.cis.jhu.edu/~parky/Enron/Anno_Topic_exp_LDC.pdf}) There are 32 topics. -Topic "0" means an outlier, e.g., too few words or all meaningless numbers in the message body, etc. + Topic "0" means an outlier, e.g., too few words or all meaningless numbers in the message body, etc. Topic "-1" means there is no matching topic. -} + } } \source{ \url{http://www.cis.jhu.edu/~parky/Enron/} diff --git a/man/foodwebs.Rd b/man/foodwebs.Rd index 9953028..1dd5422 100644 --- a/man/foodwebs.Rd +++ b/man/foodwebs.Rd @@ -6,7 +6,7 @@ \title{A collection of food webs} \format{ A named list of directed \code{igraph} graph objects. -Here are the list of the graphs included: + Here are the list of the graphs included: \describe{ \item{\sQuote{ChesLower}}{Lower Chesapeake Bay in Summer. @@ -21,7 +21,7 @@ Reference: same as for \sQuote{ChesLower}.} \item{\sQuote{Chesapeake}}{Chesapeake Bay Mesohaline Network. Reference: Baird D. & Ulanowicz R.E. (1989) The seasonal dynamics of the Chesapeake Bay ecosystem. -Ecological Monographs 59:329-364.} + Ecological Monographs 59:329-364.} \item{\sQuote{CrystalC}}{Crystal River Creek (Control). Reference: Homer, M. and W.M. Kemp. Unpublished Ms. @@ -36,14 +36,14 @@ Benthic- Pelagic switching in a coastal subtropical lagoon. Estuarine, Coastal a \item{\sQuote{Michigan}}{Lake Michigan Control network. Reference: Krause, A. and D. Mason. (In preparation.) -A. Krause, PhD. Dissertation, Michigan State University. Ann Arbor, MI. USA.} + A. Krause, PhD. Dissertation, Michigan State University. Ann Arbor, MI. USA.} \item{\sQuote{Mondego}}{Mondego Estuary - Zostrea site. Reference: Patricio, J. (In Preparation) Master's Thesis. University of Coimbra, Coimbra, Portugal.} \item{\sQuote{Narragan}}{Narragansett Bay Model. Reference: Monaco, M.E. and R.E. Ulanowicz. (1997) Comparative ecosystem trophic structure of three U.S. Mid-Atlantic estuaries. -Mar. Ecol. Prog. Ser. 161:239-254.} + Mar. Ecol. Prog. Ser. 161:239-254.} \item{\sQuote{Rhode}}{Rhode River Watershed - Water Budget. Reference: Correll, D. (Unpublished manuscript) Smithsonian Institute, Chesapeake Bay Center for Environmental Research, @@ -56,8 +56,8 @@ Apalachee Bay, Florida. Estuarine, Coastal, and Shelf Science 47: 329-349.} \item{\sQuote{baydry}}{Florida Bay Trophic Exchange Matrix, dry season. Reference: Ulanowicz, R. E., C. Bondavalli, and M. S. Egnotovich. 1998. -Network analysis of trophic dynamics in South Florida ecosystems, FY 97: the Florida Bay ecosystem. -Annual Report to the United States Geological Service Biological Resources Division, University of Miami Coral Gables, + Network analysis of trophic dynamics in South Florida ecosystems, FY 97: the Florida Bay ecosystem. + Annual Report to the United States Geological Service Biological Resources Division, University of Miami Coral Gables, [UM-CES] CBL 98-123, Maryland System Center for Environmental Science, Chesapeake Biological Laboratory, Maryland, USA.} \item{\sQuote{baywet}}{Florida Bay Trophic Exchange Matrix, wet season. @@ -65,8 +65,8 @@ Reference: same as for \sQuote{baydry}.} \item{\sQuote{cypdry}}{Cypress, dry season. Reference: Ulanowicz, R. E., C. Bondavalli, and M. S. Egnotovich. 1997. -Network analysis of trophic dynamics in South Florida ecosystems, FY 96: the cypress wetland ecosystem. -Annual Report to the United States Geological Service Biological Resources Division, University of Miami Coral Gables, + Network analysis of trophic dynamics in South Florida ecosystems, FY 96: the cypress wetland ecosystem. + Annual Report to the United States Geological Service Biological Resources Division, University of Miami Coral Gables, [UM-CES] CBL 97-075, Maryland System Center for Environmental Science, Chesapeake Biological Laboratory.} \item{\sQuote{cypwet}}{Cypress, wet season. @@ -74,16 +74,16 @@ Reference: same as for \sQuote{cypdry}.} \item{\sQuote{gramdry}}{Everglades Graminoids - Dry Season. Reference: Ulanowicz, R. E., J. J. Heymans, and M. S. Egnotovich. 2000. -Network analysis of trophic dynamics in South Florida ecosystems, FY 99: the graminoid ecosystem. -Technical Report TS-191-99, Maryland System Center for Environmental Science, Chesapeake Biological Laboratory, Maryland, USA.} + Network analysis of trophic dynamics in South Florida ecosystems, FY 99: the graminoid ecosystem. + Technical Report TS-191-99, Maryland System Center for Environmental Science, Chesapeake Biological Laboratory, Maryland, USA.} \item{\sQuote{gramwet}}{Everglades Graminoids - Wet Season. Reference: same as for \sQuote{gramdry}.} \item{\sQuote{mangdry}}{Mangrove Estuary, Dry Season. Reference: Ulanowicz, R. E., C. Bondavalli, J. J. Heymans, and M. S. Egnotovich. 1999. -Network analysis of trophic dynamics in South Florida ecosystems, FY 98: the mangrove ecosystem. -Technical Report TS-191-99, Maryland System Center for Environmental Science, Chesapeake Biological Laboratory, Maryland, USA.} + Network analysis of trophic dynamics in South Florida ecosystems, FY 98: the mangrove ecosystem. + Technical Report TS-191-99, Maryland System Center for Environmental Science, Chesapeake Biological Laboratory, Maryland, USA.} \item{\sQuote{mangwet}}{Mangrove Estuary, Wet Season. Reference: same as for \sQuote{mangdry}.} @@ -97,7 +97,7 @@ Each graph has the following vertex attributes: \sQuote{name} is the name of the \item Input \item Output \item Respiration. -} + } The \sQuote{Biomass} vertex attribute contains the biomass of the species. Edges are weighted, and the weights denote energy flux between the species involved. @@ -106,14 +106,14 @@ The graphs also contain some informative graph attributes: \sQuote{Author}, \sQu } \source{ See references for the individual webs above. -The data itself was downloaded from \url{http://vlado.fmf.uni-lj.si/pub/networks/data/bio/foodweb/foodweb.htm}. + The data itself was downloaded from \url{http://vlado.fmf.uni-lj.si/pub/networks/data/bio/foodweb/foodweb.htm}. } \usage{ foodwebs } \description{ A list of graphs. -Each one is a food web, i.e. a directed graph of predator-prey relationships. + Each one is a food web, i.e. a directed graph of predator-prey relationships. } \references{ See them above. diff --git a/man/immuno.Rd b/man/immuno.Rd index 1d7a2ab..eddc5dc 100644 --- a/man/immuno.Rd +++ b/man/immuno.Rd @@ -17,13 +17,13 @@ immuno } \description{ The undirected and connected network of interactions in the immunoglobulin protein. -It is made up of 1316 vertices representing amino-acids + It is made up of 1316 vertices representing amino-acids and an edge is drawn between two amino-acids if the shortest distance between their C_alpha atoms is smaller than the threshold value \eqn{\theta=8}{theta=8} Angstrom. } \references{ D. Gfeller, Simplifying complex networks: from a clustering to a coarse graining strategy, \emph{PhD Thesis EPFL}, no 3888, 2007. -\url{http://library.epfl.ch/theses/?nr=3888} + \url{http://library.epfl.ch/theses/?nr=3888} } \keyword{datasets} diff --git a/man/karate.Rd b/man/karate.Rd index 6db9ac7..338d2c8 100644 --- a/man/karate.Rd +++ b/man/karate.Rd @@ -6,7 +6,7 @@ \title{Zachary's karate club network} \format{ An undirected \code{igraph} graph object. -Vertex no. 1 is Mr. Hi, vertex no. 34 corresponds to John A. + Vertex no. 1 is Mr. Hi, vertex no. 34 corresponds to John A. Graph attributes: \sQuote{name}, \sQuote{Citation}, \sQuote{Author}. @@ -25,33 +25,33 @@ karate Social network between members of a university karate club, led by president John A. and karate instructor Mr. Hi (pseudonyms). The edge weights are the number of common activities the club members took part of. -These activities were: + These activities were: \enumerate{ \item Association in and between academic classes at the university. -\item Membership in Mr. Hi's private karate studio on the east side of the city + \item Membership in Mr. Hi's private karate studio on the east side of the city where Mr. Hi taught nights as a part-time instructor. -\item Membership in Mr. Hi's private karate studio on the east side of the city, + \item Membership in Mr. Hi's private karate studio on the east side of the city, where many of his supporters worked out on weekends. -\item Student teaching at the east-side karate studio referred to in (2). -This is different from (2) in that student teachers interacted with each other, + \item Student teaching at the east-side karate studio referred to in (2). + This is different from (2) in that student teachers interacted with each other, but were prohibited from interacting with their students. -\item Interaction at the university rathskeller, located in the same basement as the karate club's workout area. -\item Interaction at a student-oriented bar located across the street from the university campus. -\item Attendance at open karate tournaments held through the area at private karate studios. -\item Attendance at intercollegiate karate tournaments held at local universities. -Since both open and intercollegiate tournaments were held on Saturdays, attendance at both was impossible. -} + \item Interaction at the university rathskeller, located in the same basement as the karate club's workout area. + \item Interaction at a student-oriented bar located across the street from the university campus. + \item Attendance at open karate tournaments held through the area at private karate studios. + \item Attendance at intercollegiate karate tournaments held at local universities. + Since both open and intercollegiate tournaments were held on Saturdays, attendance at both was impossible. + } Zachary studied conflict and fission in this network, as the karate club was split into two separate clubs, after long disputes between two factions of the club, one led by John A., the other by Mr. Hi. The \sQuote{Faction} vertex attribute gives the faction memberships of the actors. -After the split of the club, club members chose their new clubs based on their factions, + After the split of the club, club members chose their new clubs based on their factions, except actor no. 9, who was in John A.'s faction but chose Mr. Hi's club. } \references{ Wayne W. Zachary. An Information Flow Model for Conflict and Fission in Small Groups. -\emph{Journal of Anthropological Research} Vol. 33, No. 4 452-473 \doi{10.1086/jar.33.4.3629752} + \emph{Journal of Anthropological Research} Vol. 33, No. 4 452-473 \doi{10.1086/jar.33.4.3629752} } \keyword{datasets} diff --git a/man/kite.Rd b/man/kite.Rd index 127a408..c40c55b 100644 --- a/man/kite.Rd +++ b/man/kite.Rd @@ -16,11 +16,11 @@ kite } \description{ Krackhardt's kite is a fictional social network with ten actors. -It is a small (though not the smallest possible) graph for which the most central actors are different + It is a small (though not the smallest possible) graph for which the most central actors are different according to the three classic centrality measures: degree, closeness and betweenness. } \references{ Assessing the Political Landscape: Structure, Cognition, and Power in Organizations. -David Krackhardt. \emph{Admin. Sci. Quart.} 35, 342-369, 1990. \doi{10.2307/2393394} + David Krackhardt. \emph{Admin. Sci. Quart.} 35, 342-369, 1990. \doi{10.2307/2393394} } \keyword{datasets} diff --git a/man/lesmis.Rd b/man/lesmis.Rd index 026149b..c633379 100644 --- a/man/lesmis.Rd +++ b/man/lesmis.Rd @@ -22,5 +22,5 @@ in the GML, GraphML or Pajek format. } \references{ D. E. Knuth, The Stanford GraphBase: A Platform for Combinatorial Computing, Addison-Wesley, Reading, MA (1993). -\url{https://www-cs-faculty.stanford.edu/~knuth/sgb.html} + \url{https://www-cs-faculty.stanford.edu/~knuth/sgb.html} } diff --git a/man/macaque.Rd b/man/macaque.Rd index e8637eb..f97c27c 100644 --- a/man/macaque.Rd +++ b/man/macaque.Rd @@ -9,7 +9,7 @@ A directed \code{igraph} graph object with vertex attributes \sQuote{name} and \ This dataset is licensed under a Creative Commons Attribution-Share Alike 2.0 UK: England & Wales License, see \url{http://creativecommons.org/licenses/by-sa/2.0/uk/} for details. -Please cite the reference below if you use this dataset. + Please cite the reference below if you use this dataset. } \source{ See reference below. @@ -19,12 +19,12 @@ macaque } \description{ Graph model of the visuotactile brain areas and connections of the macaque monkey. -The model consists of 45 areas and 463 directed connections. + The model consists of 45 areas and 463 directed connections. } \references{ Negyessy L., Nepusz T., Kocsis L., Bazso F.: Prediction of the main cortical areas and connections involved in the tactile function of the visual cortex by network analysis. -\emph{European Journal of Neuroscience}, 23(7): 1919-1930, 2006. -\doi{10.1111/j.1460-9568.2006.04678.x} + \emph{European Journal of Neuroscience}, 23(7): 1919-1930, 2006. + \doi{10.1111/j.1460-9568.2006.04678.x} } \keyword{datasets} diff --git a/man/netzschleuder.Rd b/man/netzschleuder.Rd index 5118cd0..2093524 100644 --- a/man/netzschleuder.Rd +++ b/man/netzschleuder.Rd @@ -14,15 +14,15 @@ ns_graph(name, token = NULL, size_limit = 1) } \arguments{ \item{name}{Character. The name of the network dataset. -To get a network from a collection, use the format \verb{/}.} + To get a network from a collection, use the format \verb{/}.} \item{collection}{Logical. If TRUE, get the metadata of a whole collection of networks.} \item{token}{Character. Some networks have restricted access and require a token.} \item{size_limit}{Numeric. Maximum allowed file size in GB. -Larger files will be prevented from being downloaded. -See \url{https://networks.skewed.de/restricted}.} + Larger files will be prevented from being downloaded. + See \url{https://networks.skewed.de/restricted}.} } \value{ \describe{ @@ -33,9 +33,9 @@ See \url{https://networks.skewed.de/restricted}.} } \description{ These functions provide tools to interact with the Netzschleuder network dataset archive. -Netzschleuder (\url{https://networks.skewed.de/}) is a large online repository for network datasets, + Netzschleuder (\url{https://networks.skewed.de/}) is a large online repository for network datasets, aimed at aiding scientific research. -\describe{ + \describe{ \item{\code{ns_metadata()}}{ retrieves metadata about a network or network collection.} \item{\code{ns_df()}}{downloads the graph data as data frames (nodes, edges, and graph properties).} \item{\code{ns_graph()}}{creates an \code{igraph} object directly from Netzschleuder.} diff --git a/man/rfid.Rd b/man/rfid.Rd index 84c5955..4063b72 100644 --- a/man/rfid.Rd +++ b/man/rfid.Rd @@ -9,14 +9,14 @@ An igraph graph with graph attributes \sQuote{name} and \sQuote{Citation}, vertex attribute \sQuote{Status} and edge attribute \sQuote{Time}. \sQuote{Status} is the status of the person. -Status codes: administrative staff (ADM), medical doctor (MED), + Status codes: administrative staff (ADM), medical doctor (MED), paramedical staff, such as nurses or nurses' aides (NUR), and patients (PAT). \sQuote{Time} is the time of the encounter, it is the second when the 20 second encounter terminated. } \source{ See the reference below. -Please cite it if you use this dataset in your work. + Please cite it if you use this dataset in your work. } \usage{ rfid @@ -24,14 +24,14 @@ rfid \description{ Records of contacts among patients and various types of health care workers in the geriatric unit of a hospital in Lyon, France, in 2010, from 1pm on Monday, December 6 to 2pm on Friday, December 10. -Each of the 75 people in this study consented to wear RFID sensors on small identification badges during this period, + Each of the 75 people in this study consented to wear RFID sensors on small identification badges during this period, which made it possible to record when any two of them were in face-to-face contact with each other (i.e., within 1-1.5 m of each other) during a 20-second interval of time. } \references{ P. Vanhems, A. Barrat, C. Cattuto, J.-F. Pinton, N. Khanafer, C. Regis, B.-a. Kim, B. Comte, N. Voirin: Estimating potential infection transmission routes in hospital wards using wearable proximity sensors. -PloS One 8(9), e73970 306 (2013). -\doi{10.1371/journal.pone.0073970} + PloS One 8(9), e73970 306 (2013). + \doi{10.1371/journal.pone.0073970} } \keyword{datasets} diff --git a/man/yeast.Rd b/man/yeast.Rd index a98d788..82b1258 100644 --- a/man/yeast.Rd +++ b/man/yeast.Rd @@ -6,8 +6,8 @@ \title{Yeast protein interaction network} \format{ An undirected \code{igraph} graph object. -Its graph attributes: \sQuote{name}, \sQuote{Citation}, \sQuote{Author}, \sQuote{URL}. \sQuote{Classes}. -The \sQuote{Classes} attribute contain the key for the classification labels of the proteins, + Its graph attributes: \sQuote{name}, \sQuote{Citation}, \sQuote{Author}, \sQuote{URL}. \sQuote{Classes}. + The \sQuote{Classes} attribute contain the key for the classification labels of the proteins, in a data frame, the original MIPS categories are given after the semicolon: \describe{ \item{E}{energy production; energy} @@ -45,11 +45,11 @@ Comprehensive protein-protein interaction maps promise to reveal many aspects of the complex regulatory network underlying cellular function. This data set was compiled by von Mering et al. (see reference below), combining various sources. -Only the interactions that have \sQuote{high} and \sQuote{medium} confidence are included here. + Only the interactions that have \sQuote{high} and \sQuote{medium} confidence are included here. } \references{ Comparative assessment of large-scale data sets of protein-protein interactions. -Christian von Mering, Roland Krause, Berend Snel, Michael Cornell, Stephen G. Oliver, Stanley Fields and Peer Bork. -\emph{Nature} 417, 399-403 (2002) + Christian von Mering, Roland Krause, Berend Snel, Michael Cornell, Stephen G. Oliver, Stanley Fields and Peer Bork. + \emph{Nature} 417, 399-403 (2002) } \keyword{datasets}