Discourse Network Analyzer (DNA)
dna-3.0.10.jar
is the main DNA application. You need Java 11 or higher to use it, for example the Adoptium OpenJDK 11.
rDNA_3.0.10.tar.gz
is the accompanying R package.
sample.dna
is a toy database. The password for accessing the database is sample
for all coders, including the admin coder.
bibliography.pdf
is a bibliography listing 259 publications and theses using DNA.
dna_network
function in rDNA.combine
setting in one-mode network export aggregated duplicate statements. This was correct in version 3.0.8 but not anymore in 3.0.9 and has been fixed again.The most important new functions are categorical qualifier variables, local document search, and new rDNA functions for networks, attributes, and barplots.
Important bug fixes include the batch document importer and the multi-statement editor.
The sample.dna
database still has the password sample
. The next release will have more R functions for data management.
Installation instructions and requirements are the same as for v3.0.7.
[title: some title] [author: some author] [section: some section].txt
(and similar structures for other meta data). These are easy to parse using regex terms, for example (?<=\[title: ).+?(?=\])
for matching the title, (?<=\[author: ).+?(?=\])
for matching the author, and (?<=\[section: ).+?(?=\])
for matching the section. In any case, the batch import of documents should work well now.NaN
. They are now proper zeros.dna_network
function has been added to rDNA again. It is now possible to create networks from the R console and retrieve them as matrices just like with the graphical network export in DNA. The resulting network objects have distinct class names for one- and two-mode networks, but are in essence matrix
objects (just with additional attributes) and can be treated as such in R. There are as.matrix
methods to cast these objects into proper matrix
objects. The objects also come with print
methods for pretty printing on the console. There is no plotting method yet for these objects. We aim to add this in the next release. But it is of course possible to use any network visualization package to display the data, for example the network
, ggraph
, or igraph
packages.dna_barplot
function to rDNA. The new function creates data necessary for creating barplots like in Leifeld and Haunss (2012, EJPR), Fergie et al. (2019, Addiction) and in some other papers. The data are saved in a dna_barplot
object, which is just a data.frame with added attributes and can be treated as such. There is a fancy print
method to display it nicely on the R console. The user can print and/or edit the data and then use the autoplot
method to create the actual diagram, with several options. This approach should give the user the greatest flexibility to change the data or create custom plots with the data.dna_getAttributes
function to rDNA to retrieve all entities and their attribute values and colors from the DNA database. The resulting object is a dna_attributes
object, but it is simply a data.frame (just with some additional attributes) and can be treated as such in R. In the future, we will add functions to edit entities and attributes in the database from R.Please view the installation instructions and requirements for release version 3.0.7 for more details.
Like in previous versions, the password for all coders in the sample database is "sample
".
We are aiming to release the next version 3.0.10 in mid to late February 2023, with new rDNA functions for data management in R and some new analysis functions.
Some minor bug fixes since the last release a few days ago. Observe the commit history on 16 June 2022 for details. In particular:
dna_jar
function in rDNA
.dna_saveConnectionProfile
.dna_openDatabase
was changed.Note that the password for the sample database is still sample
for all coders in the file.
DNA 3 is a major rewrite of DNA. It requires Java 11. The sample database requires the password sample
for all users. There are not a lot of functions in the rDNA R package yet, so use DNA 2.0 beta 25 for now if you require R. Otherwise DNA 3 is ready for production. There is no manual yet. Work on improving DNA 3 and especially rDNA will continue over the summer.
java --version
. The recommended Java version is Adopt OpenJDK 11.java -jar dna-3.0.7.jar
. Note that DNA will be closed when you close the terminal window.dna_jar
function allows you to find the jar file on your computer or download it to your computer. It is recommended that you put the jar file into the inst/java/
sub-directory of your rDNA
package folder in your local R library tree. The dna_jar
function will attempt to do this for you, but you might just as well put a copy of the jar file there manually.sample
to log into the database. This password is valid for all coders present in the sample database..graphml
files exported by DNA can be read by visone. It is recommended to download the latest visone jar file.While DNA 3 is an improvement over DNA 2 in many ways, the following things have not been added back in yet:
Changes since the last release:
dna_multiclust
function, which applies a dozen clustering and community detection techniques to a discourse network and computes modularity, for a single network or a time-window series of networks. If a time-window series of networks is used, the largest modularity score of all cluster solutions is saved in a separate list and can be plotted as a curve using the new dna_plotModularity
function.dna_timeWindow
function because its functionality is replaced by dna_multiclust
and dna_plotModularity
.dna_dendrogram
function, which computes the cluster solution with the highest modularity using the dna_multiclust
function and then plots a dendrogram for this cluster solution. It is also possible to set various colors and other settings for the dendrogram easily.dna_polarization
function, which applies a genetic algorithm to find the extent of polarization in a discourse network or a time-window series of networks. If a time-window series of networks is used to compute polarization, the new dna_plotPolarization
function can plot a) a curve for the polarization measure over time and b) convergence diagnostics of the genetic algorithm.dna_plotNetwork
, following changes in the ggraph
and graphlayouts
packages.Changes since the last release:
dna_addCoder
, dna_removeCoder
, and dna_updateCoder
.dna_addRegex
, dna_getRegex
, and dna_removeRegex
.dna_getSettings
and dna_updateSetting
.dna_network
.dna_network
.outfile
and fileFormat
arguments to dna_network
to save networks directly to a file from R if desired.Install this version of the rDNA package with:
library("remotes")
install_github("leifeld/dna/[email protected]", INSTALL_opts = "--no-multiarch")
Changes since the last release:
dna_getStatements
, dna_setStatements
, dna_addStatement
, dna_removeStatement
, dna_getStatementTypes
, dna_addStatementType
, dna_removeStatementType
, dna_renameStatementType
, dna_colorStatementType
, dna_getVariables
, dna_addVariable
, dna_removeVariable
, dna_renameVariable
, and dna_recastVariable
.dna_downloadJar
: The function now recognizes the latest stable release version on GitHub and downloads to the R library path by default.dna_init
: The function now selects the latest jar file in the library path automatically. If none is present, it searches the current working directory for a jar file. It is still possible to provide the filename to override this behavior.Install this version of the rDNA package with:
library("devtools")
install_url("https://github.com/leifeld/dna/releases/download/v2.0-beta.23/rDNA_2.1.13.tar.gz",
INSTALL_opts = "--no-multiarch")
This new beta version contains...
dna_timeWindow
and dna_plotTimeWindow
functions in the rDNA
package) andMCMCpack
package (implemented by @TimHenrichsen) for ideological scaling of actors and concepts (see rDNA
functions dna_scale1dbin
, dna_scale1dord
, dna_scale2dbin
, dna_scale2dord
, plot.dna_scale
, print.dna_scale
, and dna_plotScale
).Install this version of the R
package with:
devtools::install_url("https://github.com/leifeld/dna/releases/download/v2.0-beta.22/rDNA_2.1.9.tar.gz", INSTALL_opts = "--no-multiarch")
Added several new functions to rDNA, which is now a more complete tool for qualitative content analysis and discourse network analysis.
With this new release, rDNA is now more than just an R package to retrieve network data from DNA. Several new functions such as dna_cluster()
, dna_barplot()
, dna_plotFrequency()
, dna_plotDendro()
, dna_plotHeatmap()
, dna_plotHive()
, dna_plotCoordinates()
, dna_plotNetwork()
, dna_plotTimeWindow()
, dna_addDocument()
, dna_getDocuments()
, dna_removeDocument()
, dna_setDocuments()
and dna_getAttributes()
were implemented. This means that rDNA now covers many common steps of a discourse network analysis with dedicated functions in R.
The new functions are also covered in a new version of the manual.
This release also fixed several bugs in DNA and added the ability to specify the width of popup windows in the GUI.
Added completed manual, additional functions in rDNA
and fixed a few minor issues.
With this new release, DNA
now has a complete guide in form of the "Discourse Network Analyzer Manual". The manual helps users to get started with DNA
, describes the functionality of DNA
and showcases some application scenarios of the work with rDNA
.
There are also several new functions in rDNA
: dna_sample
, dna_timeWindow
, dna_plotTimeWindow
, dna_plotCentrality
, dna_cluster
and dna_plotCluster
. See the help pages of the rDNA
package for more details.