2013-07-24 62 views
1

我有一個巨大的列表,例如。 {a,b,c},{d,e,f}和我必須只有{a,c},{d,f}。我使用從URL導入。 我的句子:在Mathematica中刪除列

Drop[Import["url"],{2}] 

而且它不起作用。爲什麼?

+0

爲什麼你需要'引進[]'?您只能使用列表作爲參數。另外,請查看「Drop」手冊:它說它刪除了前n個元素。如果你使用Drop [yourlist,2]'你將刪除'yourlist'的前兩個元素。看看'刪除[]',也許這就是你想要的 – Sosi

+0

你也可以嘗試只導入感興趣的列。例如:'Import [「URL」,{「Data」,{All},{1,3}}];'(見[here](http://mathematica.stackexchange.com/a/5921/106) ) – tomd

+0

請考慮使用* Mathematica *的專用SE網站:http://mathematica.stackexchange.com –

回答

5

只需使用Drop函數的第三個參數,像這樣:

list = {{a, b, c}, {d, e, f}}; 
Drop[list, None, {2}] 

這將返回:

{{a, c}, {d, f}} 
+2

您學習的東西。我從來沒有注意到'Drop'中的第三個參數+1。 – rcollyer

+0

這不僅是第三個參數:如果您的列表更深一些,則可以使用與其中的維數一樣多的參數。 – ogerard

2

您需要將地圖放在地圖上。

list = {{a, b, c}, {d, e, f}}; 
Map[Drop[#, {2}] &, list] 

{{A,C},{d,F}}

可替代地,使用轉置,但是這顯然是低效率的,因爲它使該列表的副本。

[email protected][[email protected], {2}]