SCM

SCM Repository

[tm] Diff of /pkg/R/corpus.R
ViewVC logotype

Diff of /pkg/R/corpus.R

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1460, Mon Jan 9 17:01:04 2017 UTC revision 1481, Sat May 20 10:28:00 2017 UTC
# Line 7  Line 7 
7    
8      readerControl <- prepareReader(readerControl, reader(x))      readerControl <- prepareReader(readerControl, reader(x))
9    
10      if ((inherits(x, "DirSource") || inherits(x, "VectorSource")) &&      if ( (inherits(x, "DataframeSource") || inherits(x, "DirSource") ||
11          identical(readerControl$reader, readPlain))            inherits(x, "VectorSource") ) &&
12            identical(readerControl$reader, reader(x)))
13          SimpleCorpus(x, readerControl)          SimpleCorpus(x, readerControl)
14      else      else
15          VCorpus(x, readerControl)          VCorpus(x, readerControl)
# Line 42  Line 43 
43      }      }
44      x <- close(x)      x <- close(x)
45    
46      p <- list(content = tdl,      cmeta <- CorpusMeta()
47                meta = CorpusMeta(),      dmeta <- data.frame(row.names = seq_along(tdl))
48                dmeta = data.frame(row.names = seq_along(tdl)),      # Check if metadata retrieval is supported
49                dbcontrol = dbControl)      if (is.function(getS3method("getMeta", class(x), TRUE))) {
50            m <- getMeta(x)
51            if (!is.null(m$cmeta)) cmeta <- m$cmeta
52            if (!is.null(m$dmeta)) dmeta <- m$dmeta
53        }
54    
55        p <- list(content = tdl, meta = cmeta, dmeta = dmeta, dbcontrol = dbControl)
56      class(p) <- c("PCorpus", "Corpus")      class(p) <- c("PCorpus", "Corpus")
57      p      p
58  }  }
# Line 55  Line 62 
62  {  {
63      stopifnot(inherits(x, "Source"))      stopifnot(inherits(x, "Source"))
64    
65      if (!is.null(control$reader) && !identical(control$reader, readPlain))      if (!is.null(control$reader) && !identical(control$reader, reader(x)))
66          warning("custom reader is ignored")          warning("custom reader is ignored")
67    
68      content <- if (inherits(x, "VectorSource")) {      content <- if (inherits(x, "VectorSource")) {
# Line 67  Line 74 
74                                              collapse = "\n"))                                              collapse = "\n"))
75                     ),                     ),
76                   basename(x$filelist))                   basename(x$filelist))
77        } else if (inherits(x, "DataframeSource")) {
78            setNames(as.character(x$content[, "text"]), x$content[, "doc_id"])
79      } else      } else
80          stop("unsupported source type")          stop("unsupported source type")
81    
82        dmeta <- if (inherits(x, "DataframeSource"))
83            x$content[, !names(x$content) %in% c("doc_id", "text")]
84        else
85            data.frame(row.names = seq_along(x))
86    
87      s <- list(content = content,      s <- list(content = content,
88                meta = CorpusMeta(language = control$language),                meta = CorpusMeta(language = control$language),
89                dmeta = data.frame(row.names = seq_along(x)))                dmeta = dmeta)
90      class(s) <- c("SimpleCorpus", "Corpus")      class(s) <- c("SimpleCorpus", "Corpus")
91      s      s
92  }  }
# Line 106  Line 121 
121      }      }
122      x <- close(x)      x <- close(x)
123    
124      as.VCorpus(tdl)      cmeta <- CorpusMeta()
125        dmeta <- data.frame(row.names = seq_along(tdl))
126        # Check if metadata retrieval is supported
127        if (is.function(getS3method("getMeta", class(x), TRUE))) {
128            m <- getMeta(x)
129            if (!is.null(m$cmeta)) cmeta <- m$cmeta
130            if (!is.null(m$dmeta)) dmeta <- m$dmeta
131        }
132    
133        v <- as.VCorpus(tdl)
134        v$meta <- cmeta
135        v$dmeta <- dmeta
136    
137        v
138  }  }
139    
140  `[.PCorpus` <-  `[.PCorpus` <-
# Line 161  Line 189 
189  {  {
190      i <- .map_name_index(x, i)      i <- .map_name_index(x, i)
191      if (!is.null(x$lazy))      if (!is.null(x$lazy))
192          .Call(copyCorpus, x, materialize(x, i))          .Call(tm_copyCorpus, x, materialize(x, i))
193      x$content[[i]]      x$content[[i]]
194  }  }
195    
# Line 243  Line 271 
271  function(x)  function(x)
272  {  {
273      if (!is.null(x$lazy))      if (!is.null(x$lazy))
274          .Call(copyCorpus, x, materialize(x))          .Call(tm_copyCorpus, x, materialize(x))
275      x$content      x$content
276  }  }
277    

Legend:
Removed from v.1460  
changed lines
  Added in v.1481

root@r-forge.r-project.org
ViewVC Help
Powered by ViewVC 1.0.0  
Thanks to:
Vienna University of Economics and Business Powered By FusionForge