Re: Select list elements and exchange them
- To: mathgroup at smc.vnet.net
- Subject: [mg109810] Re: Select list elements and exchange them
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Wed, 19 May 2010 07:00:42 -0400 (EDT)
testList = {{11, {2, 3}}, {21, {3, 4}}, {34, {5, 6}}, {51, {7, 8}}, {77, {3,
4}}};
Cases[testList, {_, {3, 4}}]
{{21, {3, 4}}, {77, {3, 4}}}
or
Select[testList, #[[2]] == {3, 4} &]
{{21, {3, 4}}, {77, {3, 4}}}
Flatten[Position[testList, {_, {3, 4}}]]
{2,5}
However, none of this is needed. Just use
testList /. {_, {3, 4}} -> {100, {3, 4}}
{{11, {2, 3}}, {100, {3, 4}},
{34, {5, 6}}, {51, {7, 8}},
{100, {3, 4}}}
Bob Hanlon
---- ishii.mitsuo.titanium at nsc.co.jp wrote:
=============
Hi
I have a problem.
I have a list.
testList={ {11,{2,3}},{21,{3,4}},{34,{5,6}},{51,{7,8}} }
1) From this list, select any element list such as {x,{3,4}},
where X is an arbitrary number.
In general, position of {x,{3,4}} in "testList" is not fixed.
2) Select any element list such as {x,{3,4}} and then exchange {x,{3,4}} to {100,{3,4}}.
3)Make a new list finally.
testListNew={ {11,{2,3}},{100,{3,4}},{34,{5,6}},{51,{7,8}} }
Please teach me how to solve.
Thanks in advance.
Mitsuo Ishii