[R] Merging two or more frequency tables

arun smartpink111 at yahoo.com
Thu Sep 20 01:27:02 CEST 2012


HI,

Inspired from Rui's function:
Slightly modified:
 fun1<-function(x,...){
 z<-paste(unlist(list(x,...)),collapse=" ")
 tsum<-table(strsplit(tolower(z),"\\W"))
 tsum}
 fun1(x,y)
  # age      belief    darkness       epoch foolishness incredulity 
    #      2           1           1           2           1           1 
     #    it       light          of      season         the         was 
       #   6           1           6           2           6           6 
    # wisdom 
      #    1 
A.K.




----- Original Message -----
From: Rui Barradas <ruipbarradas at sapo.pt>
To: mcelis <mcelis at lightminersystems.com>
Cc: r-help at r-project.org
Sent: Wednesday, September 19, 2012 6:18 PM
Subject: Re: [R] Merging two or more frequency tables

Hello,

Try the following.


fun <- function(x, ...){
     z <- Reduce(paste, list(x, ...))
     tsum <- table(strsplit(tolower(z), "\\W"))
     tsum
}

x <- "It was the age of wisdom it was the age of foolishness it was the 
epoch of belief"
y <- "it was the epoch of incredulity it was the season of Light it was 
the season of Darkness"

fun(x, y)
z <- "It was the era of R"
fun(x, y, z)

Hope this helps,

Rui Barradas

Em 19-09-2012 20:08, mcelis escreveu:
> I am new to R and am looking to merge two or more frequency tables into one.
> I have searched around but have been unable to find exactly what I need.
>
> I have two frequency tables obtained from two sample texts
>
> t0<-table(strsplit(tolower("It was the age of wisdom it was the age of
> foolishness it was the epoch of belief"), "\\W"))
> t1<-table(strsplit(tolower("it was the epoch of incredulity it was the
> season of Light it was the season of Darkness"), "\\W"))
>
> so I get:
>> t0
>          age      belief       epoch   foolishness      it          of
> the         was   wisdom
>              2               1                  1                      1
> 3           3             3               3                 1
>> t1
>     darkness       epoch   incredulity         it       light          of
> season         the   was
>                     1                 1                     1          3
> 1             3                 2              3        3
>
> I need to merge these two tables into one so that the frequencies for each
> word are added, e.g. the word "it"
> would have 6. So resulting table would be
>
>         age      belief    darkness       epoch    foolishness
> incredulity          it       light
>             2               1                    1                2
> 1                      1           6             1
>           of      season            the            was           wisdom
>             6                2                 6                  6
> 1
>
> Any suggestions?
>
>
>
>
>
>
> --
> View this message in context: http://r.789695.n4.nabble.com/Merging-two-or-more-frequency-tables-tp4643663.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.

______________________________________________
R-help at r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.





More information about the R-help mailing list