|
1 | | -#Written by Reid McIlroy-Young for Dr. John McLevey, University of Waterloo 2015 |
2 | | -"""metaknowledge is a Python3 package that simplifies bibliometric and computational analysis of Web of Science data. |
| 1 | +#Written by Reid McIlroy-Young for Dr. John McLevey, University of Waterloo 2016 |
| 2 | +"""_metaknowledge_ is a Python3 package that simplifies bibliometric and computational analysis of Web of Science data. |
3 | 3 |
|
4 | 4 | # Example |
5 | 5 |
|
|
19 | 19 |
|
20 | 20 | # Overview |
21 | 21 |
|
22 | | -This package can read the files downloaded from the [Thomson Reuters Web of Science](https://webofknowledge.com) (WOS) as plain text. These files contain metadata about scientific records, such as the authors, title, and citations. The records are exported in groups of up-to 500 individual records to a file. |
| 22 | +This package can read the files downloaded from the Thomson Reuters' [Web of Science](https://webofknowledge.com) (_WOS_), Elsevier's [Scopus](https://www.scopus.com/), [ProQuest](www.proquest.com/) and Medline files from [PubMed](www.ncbi.nlm.nih.gov/pubmed). These files contain entries on the metadata of scientific records, such as authors, title, and citations. _metaknowledge_ can also read grants from various organizations including _NSF_ and _NSERC_ which are handled similarly to records. |
23 | 23 |
|
24 | | -The [metaknowledge.RecordCollection](#RecordCollection.RecordCollection) class can take a path to one or more of these files load and parse them. The object is the main way for work to be done on multiple records. For each individual record it creates an instance of the [metaknowledge.Record](#Record.Record) class that contains the results of the parsing of the record. |
| 24 | +The [metaknowledge.RecordCollection](#RecordCollection.RecordCollection) class can take a path to one or more of these files load and parse them. The object is the main way for work to be done on multiple records. For each individual record it creates an instance of the [metaknowledge.Record](#metaknowledge.Record) class that contains the results of the parsing of the record. |
25 | 25 |
|
26 | | -The files given by WOS are a flat database containing a series of 2 character tags, e.g. 'TI' is the title. Each WOS tag has one or more values and metaknowledge can read them to extract useful information. The approximate meanings of the tags are listed in the [tagProcessing](#tagProcessing.tagProcessing) package, along with the parsing functions for each tag. If you simply want the mapping [`tagToFull()`](#metaknowledge.tagToFull) is a function that maps tags to their full names it, as well as a few other similar functions are provided by the base metaknowledge import. Note, the long names can be used in place of the short 2 character codes within metaknowledge. There are no full official public listings of tag the meanings available. metaknowledge is not attempting to provide the definitive or authoritative meanings. |
| 26 | +The files read by _metaknowledge_ are a databases containing a series of tags (implicitly or explicitly), e.g. `'TI'` is the title for WOS. Each tag has one or more values and metaknowledge can read them and extract useful information. As the tags differ between providers a small set of values can be accessed by special tags, the tags are listed in `specialRecordFields`. These special tags can act on the whole `Record` and as such may contain information provided by any number of other tags. |
27 | 27 |
|
28 | | -Citations are handled by a special [Citation](#Citation.Citation) class. This class can parse the citations given by WOS as well as extra details about the full name of their journal and allow simple comparisons. |
| 28 | +Citations are handled by a special [Citation](#Citation.Citation) class. This class can parse the citations given by _WOS_ and journals cited by _Scopus_ and allows for better comparisons when they are used in graphs. |
29 | 29 |
|
30 | 30 | Note for those reading the docstrings metaknowledge's docs are written in markdown and are processed to produce the documentation found at [networkslab.org/metaknowledge/documentation]({{ site.baseurl }}/documentation/), but you should have no problem reading them from the help function. |
31 | 31 | """ |
32 | 32 |
|
33 | | -from .mkRecord import Record, ExtendedRecord |
34 | | -from .citation import Citation, filterNonJournals |
35 | | -from .grants.baseGrant import Grant, DefaultGrant |
36 | | -from .grants.medlineGrant import MedlineGrant |
37 | | -from .grants.cihrGrant import CIHRGrant |
38 | | -from .grants.nsercGrant import NSERCGrant |
39 | | - |
| 33 | +from .constants import VERBOSE_MODE, __version__, specialRecordFields, FAST_CITES |
| 34 | +from .mkExceptions import BadCitation, BadGrant, BadInputFile, BadProQuestFile, BadProQuestRecord, BadPubmedFile, BadPubmedRecord, BadRecord, BadWOSFile, BadWOSRecord, CollectionTypeError, GrantCollectionException, RCTypeError, RCValueError, RecordsNotCompatible, UnknownFile, cacheError, mkException, TagError, BadScopusRecord |
40 | 35 |
|
| 36 | +from .graphHelpers import writeEdgeList, writeNodeAttributeFile, writeGraph, readGraph, dropEdges, dropNodesByDegree, dropNodesByCount, mergeGraphs, graphStats, writeTnetFile |
| 37 | +from .diffusion import diffusionGraph, diffusionCount, diffusionAddCountsFromSource |
41 | 38 |
|
42 | | -from .recordCollection import RecordCollection |
43 | | -from .mkExceptions import BadCitation, BadGrant, BadInputFile, BadProQuestFile, BadProQuestRecord, BadPubmedFile, BadPubmedRecord, BadRecord, BadWOSFile, BadWOSRecord, CollectionTypeError, GrantCollectionException, RCTypeError, RCValueError, RecordsNotCompatible, UnknownFile, cacheError, mkException |
44 | | -#from .progressBar import _ProgressBar |
45 | | -from .grantCollection import GrantCollection |
| 39 | +from .citation import Citation, filterNonJournals |
46 | 40 | from .mkCollection import Collection, CollectionWithIDs |
| 41 | +from .mkRecord import Record, ExtendedRecord |
47 | 42 |
|
48 | | -from .graphHelpers import writeEdgeList, writeNodeAttributeFile, writeGraph, readGraph, dropEdges, dropNodesByDegree, dropNodesByCount, mergeGraphs, graphStats |
49 | | -from .constants import VERBOSE_MODE, __version__, specialRecordFields, FAST_CITES |
50 | | -from .diffusion import diffusionGraph, diffusionCount, diffusionAddCountsFromSource |
51 | 43 |
|
52 | | -#from .WOS.tagProcessing.funcDicts import tagToFull, isTagOrName, normalizeToTag, normalizeToName |
53 | | -#from .WOS.wosHandlers import wosParser |
54 | | -from .WOS.recordWOS import WOSRecord#, recordParser |
55 | | -from .WOS.journalAbbreviations.wosCitations import WOSCitation |
| 44 | +from .grantCollection import GrantCollection |
| 45 | +from .grants import NSERCGrant, CIHRGrant, MedlineGrant, NSFGrant, Grant, DefaultGrant |
56 | 46 |
|
| 47 | +from .recordCollection import RecordCollection |
| 48 | +from .WOS import WOSRecord |
57 | 49 | from .medline import MedlineRecord |
58 | | - |
59 | 50 | from .proquest import ProQuestRecord |
60 | | - |
61 | | -#from .blondel import blondel, modularity #Better implementations can be found on Pypi so this has been discontinued |
| 51 | +from .scopus import ScopusRecord |
0 commit comments