Sponsored Content
Top Forums UNIX for Advanced & Expert Users Vector base Cosine Similarity for two Matrices -- R in UNIX Post 302771785 by A-V on Thursday 21st of February 2013 01:24:21 PM
Old 02-21-2013
Vector base Cosine Similarity for two Matrices -- R in UNIX

Dear All,
I am facing a problem and I would be Thankful if you can help
Hope this is the right place to ask this question
I have two matrices of (row=10, col=3) and I want to get the cosine similarity between two lines (vectors) of each file --> the result should be (10,1) of cosine measures
I am using cosine function from Package(lsa) from R called in unix but I am facing problems with it
if these files had only one row per file I can calculate the cosine similarity as following
Code:
data01 <- c(t(read.table(file = "data01.csv", sep = ",", header=FALSE)))
data02 <- c(t(read.table(file = "data02.csv", sep = ",", header=FALSE)))
result <-cosine(data01,data02)
write.csv(result, "result.csv")

but facing problems reading lines of two files into Vectors to do the same
I have tried to write a code, it does not give any error but does not create anything and I dont know what I am doing wrong --- (new to R)
Code:
con  <- file('data01.txt', open="r")
con2 <- file('data02.txt', open="r")
a <- list();
b <- list();
test <- list();
current.line01 <- 1
current.line02 <- 1
while (length(data01 <- readLines(con, n = 10, warn = FALSE)) > 0) {
   while (length(data02 <- readLines(con2, n = 10, warn = FALSE)) > 0) {
		a[[current.line01]]<- c(data01)
		b[[current.line02]]<- c(data02)
		test <-cosine(a[[current.line01]], b[[current.line02]])
		write.table(test , "test.txt")
		current.line01 <- current.line + 1
		current.line02 <- current.line + 1
  } 
  } 
close(con)
close(con2)

can you please help me?
SmilieSmilieSmilie
 

8 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

recommendation please. Unix base ftp program

in win32 platform, i can easily find some GUI based ftp application like cuteFtp, WsFtp and etc which provides GUI + resuming download. pls recommend me some similar application which runs on Sun Solaris sparc 8. hopefully it is free. thank you very much. (1 Reply)
Discussion started by: champion
1 Replies

2. UNIX for Advanced & Expert Users

Configure SCO Unix to print on windows base XP printer

Hi, I have done this year ago, and now I need to do it again, but did not remember how I do it. I have a slip printer on a windows xp workstation and i need to print from SCO unix application to that printer. I try to create a remote printer but the only option available is unix, the other to... (0 Replies)
Discussion started by: comsiconsa
0 Replies

3. UNIX for Dummies Questions & Answers

Unix commands in Base SAS programming

hi all, iam using unix command in the basesas programming. i need to delete one folder which is dynamically creating when SAS script runs. rm -rf " dynamic foldername" iam not able to delete the folder it is saying rm: cannot remove directory `test_lin_prod_06_20091211_0516':... (2 Replies)
Discussion started by: bbc17484
2 Replies

4. Shell Programming and Scripting

Help with merge data based on similarity

Input_file data1 USA 100 ASE data3 UK 20 GWQR data4 Brazil 40 QWE data2 Scotland 60 THWE data5 USA 40 QWERR Reference_file USA 12312 34532 1324 Brazil 23321 231 3421 Scotland 342 34235 UK 231 141 England... (1 Reply)
Discussion started by: patrick87
1 Replies

5. UNIX for Dummies Questions & Answers

Importing R cosine similarity to UNIX?

I really need help in this :( I have a file and would like to calculate the cosine similarity of the values in it... For now I do use R which has an easy function for doing so test <- as.matrix(read.csv(file="file.csv", sep=",", header=FALSE)) result<- cosine(t(test)) I am using unix of... (3 Replies)
Discussion started by: A-V
3 Replies

6. UNIX for Dummies Questions & Answers

Merge matrices

Hello all, I have square matrices that look like the following, I want to merge these matrices together, and add the file names as headers. This is a simple example with two variables, actually I have ~1500 variables and 10 files. The order of variables in the matrices are consistent. Please... (2 Replies)
Discussion started by: senhia83
2 Replies

7. UNIX for Dummies Questions & Answers

Multiplication of two matrices

Hi there! I have two files like below File1(with a header, ~1000 rows, ~50 columns) ID1 ID2 ID3 ID4 ID5 MI1_A MI1_H MI2_A MI2_H 0 1 0 0 0 1 0 2 1 0 2 0 0 0 2 1 0 1 File2 (without a header, ~50 rows) MI1 A 0.4 3.1 MI2 B -0.2 0.1 Output ID2 M1_A M2_A 1 1*0.4 2*-0.2 2 2*0.4 0*-0.2 ... (22 Replies)
Discussion started by: Akang
22 Replies

8. Shell Programming and Scripting

Split a content in a file with specific interval base on the delimited values using UNIX command

Hi All, we have a requirement to split a content in a text file every 5 rows and write in a new file . conditions: if 5th line falls between center of the statement . it should look upto after ";" files are below format: 1 UPDATE TABLE TEST1 SET VALUE ='AFDASDFAS' 2 WHERE... (3 Replies)
Discussion started by: KK230689
3 Replies
mcxmap(1)							  USER COMMANDS 							 mcxmap(1)

  NAME
      mcxmap - permute or remap the indices of graphs and matrices.

  SYNOPSIS
      mcxmap -imx fname (input) [-o fname (output)] [-make-map (output map file name)] [-make-mapc (output map file name)] [-make-mapr (output map
      file name)] [-cmul a (coefficient)] [-cshift b (translate)] [-rmul c (coefficient)] [-rshift d (translate)] [-mul e (coefficient)] [-shift f
      (translate)]  [-map  fname  (row/col  map file)] [-rmap fname (row map file)] [-cmap fname (column map file)] [-mapi fname (row/col map file
      (use inverse))] [-rmapi fname (row map file (use inverse))] [-cmapi fname (column map file (use inverse))] [-tab fname (read (and  map)  tab
      file)]

  DESCRIPTION
      This utility relabels graphs or matrices. Its main use is in applying a map file to a given matrix or graph. A map file contains a so called
      map matrix in mcl format that has some special properties (given further below). The functionality of mcxmap can also be provided by mcx, as
      a  mapped  matrix  (i.e.	the  result  of  applying a map matrix to another matrix) is simply the usual matrix product of a matrix and a map
      matrix. However, mcx will construct a new matrix and leave the original matrix to be mapped alone. When dealing with huge matrices,  consid-
      erable  gains  in  efficiency  memory-wise  and  time-wise  can be achieved by doing the mapping in-place.  This is what mcxmap does. In the
      future, its functionality may be embedded in mcx with new mcx operators.

      The special properties of a map matrix are

      o The column domain and row domain are of the same cardinality.
      o Each column has exactly one entry.
      o Each row domain index occurs in exactly one column.

      These properties imply that the matrix can be used as a map from the column domain onto the row domain.  An example map matrix is  found	in
      the EXAMPLES Section.

  OPTIONS
      -o fname (output file)
	Output file.

      -imx fname (input file)
	Input file.

      -map fname (row/col map file))
      -rmap fname (row map file)
      -cmap fname (column map file)
      -mapi fname (row/col map file (use inverse))
      -rmapi fname (row map fil (use inverse))
      -cmapi fname (column map fil (use inverse))
	Different ways to specify map files.

      -make-map (output map file name)
      -make-mapc (output map file name)
      -make-mapr (output map file name)
	Generate a map that maps the specified domain onto the appropriate canonical domain and write the map matrix to file.

      -cmul a (coefficient)
      -cshift b (translate)
	These  options	have  affect if neither a column map file nor column canonification is specified. If any of the first two options is used,
	column indices i are mapped to a*i+b.

      -rmul c (coefficient)
      -rshift d (translate)
	These options have affect if neither a row map file nor row canonification is specified.  If  any  of  the  first  two	options  is  used,
	indices i are mapped to c*i+d.

      -mul e (coefficient)
      -shift f (translate)
	If  a  map  file  is  specified for a given domain, neither a map file nor canonification is specified. If any of the first two options is
	used, the indices i will be mapped to e*i+f.

      -tab fname (read (and map) tab file)
	This option requires the -map option. mcxmap will output the mapped tab definition.

  EXAMPLES
      The matrix below has two canonical domains which are identical.  It denotes a map of the canonical domain onto itself, in which  node  0	is
      relabeled to 8, node 1 is relabeled to 5, et cetera.

      (mclheader
      mcltype matrix
      dimensions 12x12
      )
      (mclmatrix
      begin
      0  8  $
      1  5  $
      2  3  $
      3  2  $
      4  4  $
      5  6  $
      6  7  $
      7  9  $
      8  1  $
      9  10 $
      10 11 $
      11 0  $
      )

  AUTHOR
      Stijn van Dongen.

  SEE ALSO
      mcxio(5), mcx(1), mcxsubs(1), and mclfamily(7) for an overview of all the documentation and the utilities in the mcl family.

  mcxmap 12-068 						      8 Mar 2012							   mcxmap(1)
All times are GMT -4. The time now is 11:19 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy