Re: Computing n-grams
- To: mathgroup at smc.vnet.net
- Subject: [mg88960] Re: [mg88913] Computing n-grams
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Thu, 22 May 2008 02:37:41 -0400 (EDT)
- Reply-to: hanlonr at cox.net
Use Partition
x = {a, b, c, d, e, f, g};
Partition[x, 2, 1]
{{a, b}, {b, c}, {c, d}, {d, e},
{e, f}, {f, g}}
Partition[x, 3, 1]
{{a, b, c}, {b, c, d}, {c, d, e},
{d, e, f}, {e, f, g}}
Bob Hanlon
---- "Coleman 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
>
>