Re: Computing n-grams
- To: mathgroup at smc.vnet.net
- Subject: [mg88965] Re: [mg88913] Computing n-grams
- From: "W_Craig Carter" <ccarter at mit.edu>
- Date: Thu, 22 May 2008 02:38:38 -0400 (EDT)
- References: <200805211849.OAA10371@smc.vnet.net>
Hello Mark, I believe this may work for your purposes: t = {a, b, c, d, e, f, g} Transpose[NestList[RotateLeft[#] &, t, 1]] Transpose[NestList[RotateLeft[#] &, t, 2]] Kind Regards, WCC On Wed, May 21, 2008 at 2:49 PM, Coleman, Mark <Mark.Coleman at libertymutual.com> wrote: > Greetings, > > Imagine one has a list such as {a,b,c,d,e,f,g}. I'm trying to find an > efficient way in Mathematica to compute the n-grams of the list. That is, for > n=2, the n-grams are all the lists of length 2 consisting of consecutive > elements, e.g., > > {a,b},{b,c},{c,d},{d,e},... > > While for n=3, > > {a,b,c},{b,c,d},{c,d,e},..., and so on. > > As I understand it, the built-in Mathematica commands such as Subsets or > Permutations compute all possible list of size n, without regard to the > order of the list elements. > > Thanks, > > Mark > > > -- W. Craig Carter
- References:
- Computing n-grams
- From: "Coleman, Mark" <Mark.Coleman@LibertyMutual.com>
- Computing n-grams