.\" Automatically generated by Pod::Man 4.14 (Pod::Simple 3.43) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" ======================================================================== .\" .IX Title "LDAC 3pm" .TH LDAC 3pm "2023-04-15" "perl v5.36.0" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" PDL::CCS::IO::LDAC \- LDA\-C format text I/O for PDL::CCS::Nd .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 3 \& use PDL; \& use PDL::CCS::Nd; \& use PDL::CCS::IO::LDAC; \& \& ##\-\- (Document x Term) matrix \& $dtm = PDL::CCS::Nd\->newFromWhich($which,$nzvals); \& \& ccs_writeldac($dtm,"dtm.ldac"); # write a sparse LDA\-C text file \& $dtm2 = ccs_readldac("dtm.ldac"); # read a sparse LDA\-C text file \& \& ###\-\- (Term x Document) matrix in document\-primary format \& $tdm = $dtm\->xchg(0,1)\->make_physically_indexed(); \& \& ccs_writeldac($tdm,"tdm.ldac", {transpose=>1}); \& $dtm2 = ccs_readldac("tdm.ldac", {transpose=>1}); .Ve .SH "I/O Utilities" .IX Header "I/O Utilities" .SS "ccs_writeldac" .IX Subsection "ccs_writeldac" Write a 2d PDL::CCS::Nd (Document x Term) matrix as an LDA-C text file. If the \f(CW\*(C`transpose\*(C'\fR option is specified and true, the input matrix \f(CW$ccs\fR is treated as as a (Term x Document) matrix, and output lines correspond to logical dimension 1 of \f(CW$ccs\fR. Otherwise, output lines correspond to logical dimension 0 of \f(CW$ccs\fR, which is expected to be a (Document x Term) matrix. .PP .Vb 2 \& ccs_writeldac($ccs,$filename_or_fh) \& ccs_writeldac($ccs,$filename_or_fh,\e%opts) .Ve .PP Options \f(CW%opts:\fR .PP .Vb 2 \& header => $bool, ##\-\- do/don\*(Aqt write a header to the output file (default=do) \& transpose => $bool, ##\-\- treat input $ccs as (Term x Document) matrix (default=don\*(Aqt) .Ve .SS "ccs_readldac" .IX Subsection "ccs_readldac" Read a 2d (Document x Term) matrix from an LDA-C text file as a PDL::CCS::Nd object. If the \f(CW\*(C`transpose\*(C'\fR option is specified and true, the output matrix \f(CW$ccs\fR will be a (Term x Document) matrix, and input lines correspond to logical dimension 1 of \f(CW$ccs\fR. Otherwise, input lines correspond to logical dimension 0 of \f(CW$ccs\fR, which will be returned as a (Document x Term) matrix. .PP .Vb 2 \& $ccs = ccs_readldac($filename_or_fh) \& $ccs = ccs_readldac($filename_or_fh,\e%opts) .Ve .PP Options \f(CW%opts:\fR .PP .Vb 4 \& header => $bool, ##\-\- do/don\*(Aqt try to read header data from the output file (default=do) \& type => $type, ##\-\- value datatype (default: from header or $PDL::IO::Misc::deftype) \& transpose => $bool, ##\-\- generate a (Term x Document) matrix (default=don\*(Aqt) \& sorted => $bool, ##\-\- assume input is lexicographically sorted (only if not transposed; default=don\*(Aqt) .Ve .SH "ACKNOWLEDGEMENTS" .IX Header "ACKNOWLEDGEMENTS" Perl by Larry Wall. .PP \&\s-1PDL\s0 by Karl Glazebrook, Tuomas J. Lukka, Christian Soeller, and others. .PP LDA-C package by by David M. Blei. .SH "AUTHOR" .IX Header "AUTHOR" Bryan Jurish .SS "Copyright Policy" .IX Subsection "Copyright Policy" Copyright (C) 2015\-2022, Bryan Jurish. All rights reserved. .PP This package is free software, and entirely without warranty. You may redistribute it and/or modify it under the same terms as Perl itself. .SH "SEE ALSO" .IX Header "SEE ALSO" perl, \&\s-1PDL\s0, PDL::CCS::Nd, PDL::CCS::IO::FastRaw, \&\s-1PDL::CCS::IO::FITS\s0, PDL::CCS::IO::MatrixMarket, the LDA-C package documentation at \&...