Как получить любой другой элемент в списке - PullRequest
6 голосов
/ 10 февраля 2012

У меня есть список в Mathematica, и я пытаюсь получить все остальные числа в списке и сохранить его как новый список.

В настоящее время у меня есть

ReadList["file",Number]

, который считывает весь список, { x1, x2, x3, x4, ... };Я просто хочу выбрать любой другой номер и сохранить его в новом списке, например, { x1, x3, x5, ... }.

Как это сделать?

Ответы [ 3 ]

8 голосов
/ 10 февраля 2012

Попробуйте:

  yourlist = {a, b, c, d, e, f, g, h};
 (* use Span: search for  Span or ;; in Documentation Center *)
 everyotheritemlist = yourlist[[1 ;; -1 ;; 2]];
 (* or use Take *)
 Take[yourlist, {1, -1, 2}]

Оба дают:

 {a,c,e,g}    
1 голос
/ 10 февраля 2012

Еще один способ:

First /@ ReadList["test.dat", {Number, Number}]
1 голос
/ 10 февраля 2012

Для подобных задач в Mathematica всегда есть десятки творческих способов сделать это.kguler уже дал вам канонические пути, но вот еще один:

Partition[yourlist, 2]\[Transpose][[1]]

(*
==> {a, c, e, g}
*)

Кстати: есть специальный сайт Mathematica Stackexchange на https://mathematica.stackexchange.com/. Сообщество Mathematica все больше движется в этом направлениитак что вы можете присоединиться к нам и там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...