Skip to main content
1 of 2
rm -rf
  • 89.8k
  • 21
  • 303
  • 498

Subsets takes an optional 3rd argument as Subsets[list, {n}, k] that gives you the kth sublist of length n. Since your sublists are in sequence, you'll always need k = 1. You can then use this as:

MapIndexed[First@Subsets[list, #2, 1] &, list] (* {{a}, {a, b}, {a, b, c}, {a, b, c, d}} *) 
rm -rf
  • 89.8k
  • 21
  • 303
  • 498