大きな複数列のデータ ファイルがありますが、この質問については次のように簡略化できます。
data = {{"a", 2000}, {"a", 2010}, {"b", 1999}, {"b", 2004}, {"b",
2006}, {"c", 2012}, {"c", 2014}};
次に、データから年の値を抽出するアイテムのリストがあります。たとえば、次のようになります。
selectedList = {"b", "c"};
Select[] を使用してから、selectedList を反復処理することでそれを行うことができます。
Table[
Select[data, #[[1]] == selectedList[[i]] &][[All, 2]],
{i, 1, Length[selectedList]} ]
ただし、テーブルよりも高速なマップを使用したいと考えています。私がすることができます:
func[dat_, x_] := Select[dat, #[[1]] == x &][[All, 2]]
その後 :
func[data, #] & /@ selectedList
これをワンステップで行うためのよりエレガントな方法を探しています。できれば Select を selectedList に直接マッピングします