1

我想消除嵌套列表中每个列表的第三个元素。

例如,

    lst = { {1, 0, 0}, {1, 1, 1}, {1, 1, 4} }

所以它会变成

    { {1, 0}, {1, 1}, {1, 1} }

我该怎么做?

4

2 回答 2

3

有很多方法可以做到这一点,例如

lst = {{1, 0, 0}, {1, 1, 1}, {1, 1, 4}};

lst = lst[[All, {1, 2}]]

{{1, 0}, {1, 1}, {1, 1}}

或者

lst = Transpose[Most[Transpose[lst]]]

或者,不转置

lst = MapThread[Delete, {lst, Table[3, {Length[lst]}]}]
于 2013-02-22T09:20:55.163 回答
3

完后还有:

lst = #[[1;;2]] & /@ lst

或者如果您只想从可能更长的子列表中删除第三个元素:

lst = Drop[#,{3}]& /@ lst
于 2013-02-22T14:36:34.283 回答