return to home page

click here to download program


TI.exe for Co-Word Analysis


TI.exe is freely available for academic usage. The program generates a word-occurrence matrix, a word co-occurrence matrix, and a normalized co-occurrence matrix from a set of lines (e.g., titles) and a word list. The output files can be read into standard software (like SPSS, Ucinet/Pajek, etc.) for the statistical analysis and the visualization. A version adapted for the Korean character set is available at . A version for Chinese is available at


input files


The program needs two informations, notably, (a) the name of the file <words.txt> that contains the words (as variables) to be analyzed in ASCII format and (b) a file text.txt in which each line provides a textual unit (e.g., a title). The number of lines is unlimited, but each line can at the maximum contain 999 characters. Each line has to be ended with a hard carriage return (CR + LF). The number of words is limited to 1024, but keep in mind that most programs (e.g., Excel) will not allow you to handle more than 256 variables in the follow-up. The words have to be on separate lines which are ended with a hard character return and line feed. (Save in Word as plain text with CR/LF or use a DOS utility (e.g., CRLF.EXE, available at the Internet) for saving the file.)


       If some texts are larger than 999 characters, you can use fulltext.exe instead. FullText.exe can handle an unlimited number of text files to a size of 64 k each.


       One can .build a word frequency list with FrqList.Exe. This DOS-program reads <text.txt> and allows for the specification of a stopword list in <stopword.txt>. The results are provided as uppercase in the file <wrdfrq.txt>.

       One can also build a word frequency list with a concordance program. For example, TextSTAT-2 is freeware and online. Please, remove hyphens and interpunction from the words in words.txt. Additionally, stopword.exe is available for correction using a given list with stopwords (e.g., stopword.txt). Both list—the lists of words and stopwords—have to be available in the same folder. This program just checks the words in their current form (that is, without corrections for plural or for uppercase/lowercase forms).


program file


The program is based on DOS-legacy software from the 1980s (Leydesdorff, 1995). It runs in a MS-Dos Command Box under Windows. The programs and the input files have to be contained in the same folder. The output files are written into this directory as well. Please, note that existing files from a previous run are overwritten by the program. Save output elsewhere if you wish to continue with the materials.


output files


The program produces three output files in dBase IV format. These files can be read into Excel and/or SPSS for further processing. Two files with the extension “.dat” are in DL-format (ASCII) and can be read into Pajek for the visualization (freely available at ).


a. matrix.dbf contains an occurrence matrix of the words in the texts. This matrix is asymmetrical: it contains the words as the variables and the texts as the cases. In other words, each row represents a text in the sequential order of the text numbering, and each column represents a word in the sequential order of the word list. (It is advisable to sort the word list alphabetically before the analysis.) The words are also the variable names although truncated to ten positions. The words are counted as frequencies. (The plural “s” is removed before processing.)


The file matrix.dbf can also be imported into SPSS for further analysis. An additional file labels.sps can be read into SPSS as a script; after running it provides the variables with the full words as variable labels.


b. coocc.dbf contains a co-occurrence matrix of the words from this same data. This matrix is symmetrical and it contains the words both as variables and as labels in the first field. The main diagonal is set to zero. The number of co-occurrences is equal to the multiplication of occurrences in each of the texts. (The procedure is similar to using the file matrix.dbf as input to the routine “affiliations” in UCINET, but the main diagonal is here set to zero in this matrix.) The file coocc.dat contains this information in the DL-format.


c. cosine.dbf contains a normalized co-occurrence matrix of the words from the same data. Normalization is based on the cosine between the variables conceptualized as vectors (Salton & McGill, 1983). (The procedure is similar to using the file matrix.dbf as input to the corresponding routing in SPSS.) The file cosine.dat contains this information in the Pajek-format. The size of the nodes is equal to the logarithm of the occurrences of the respective word; this feature can be turned on in Pajek.


d. words.dbf contains for all words the following three summations:

  1. A variable named “Chi_Sq” which provides Chi-square contributions for each of the variables; these are defined for wordi as Σiχ2 = (Observedij – Expectedij)2 / Expectedin. In other words, the sum of the contributions over the column for the variable in each row (Mogoutov et al., 2008);
  2. A variable named “ObsExp” which provides the sum of |Observed – Expected| for the word as a variable summed over the column;
  3. A variable named “TfIdf” which use Salton & McGill’s (1983: 63) TermFrequency-InverseDocumentFrequency measure defined as follows: WEIGHTik = FREQik * [log2 (n) – log2 (DOCFREQk) + 1]. This function assigns a high degree of importance to terms occurring in only a few documents in the collection;
  4. The word frequency within the set.


Examples of using these programs can be found in:


•     The University-Industry Knowledge Relationship: Analyzing Patents and the Science Base of Technologies, Journal of the American Society for Information Science and Technology (JASIST) 55(11) (2004), 991-1001; <pdf-version>

     Loet Leydesdorff & Iina Hellsten, Metaphors and Diaphors in Science Communication: Mapping the Case of ‘Stem-Cell Research’, Science Communication 27(1)  (2005), 64-99. <pdf-version>

click here to download program


Leydesdorff, L. (1995). The Challenge of Scientometrics: The development, measurement, and self-organization of scientific communications. Leiden: DSWO Press, Leiden University; at .

Mogoutov, A., Cambrosio, A., Keating, P., & Mustar, P. (2008). Biomedical innovation at the laboratory, clinical and commercial interface: A new method for mapping research projects, publications and patents in the field of microarrays. Journal of Informetrics, 2(4), 341-353.

Salton, G. & M. J. McGill (1983). Introduction to Modern Information Retrieval. Auckland, etc.: McGraw-Hill. 


Links to programs for (Porter’s) stemming:

Links to programs for parsing:

php-versions of Porter’s stemmer:



return to home page