あなたの質問を理解しているかどうかわかりません。たとえば、Excel ファイルではなく 2 つのテキスト ファイルがあり、データがどのように見えるかが明確ではありません。しかし、おそらくこれを行う方法はたくさんあります。ここに提案があります(最良の方法ではないかもしれません):
すべてのデータをテーブル (リストのリスト) にまとめたとします。
pt = {
{"Hydrogen", "H", 1, 1.0079, -259, -253, 0.09, 0.14, 1776, 1, 13.5984},
{"Helium", "He", 2, 4.0026, -272, -269, 0, 0, 1895, 18, 24.5874},
{"Lithium" , "Li", 3, 6.941, 180, 1347, 0.53, 0, 1817, 1, 5.3917}
}
特定の文字列に関連付けられた情報を検索するには:
Cases[pt, {"Helium", rest__} -> rest]
{"彼", 2, 4.0026, -272, -269, 0, 0, 1895, 18, 24.5874}
パターンrest__
には、「ヘリウム」の後に見つかったすべてが含まれています。
2 番目のアイテムを探すには:
Cases[pt, {_, "Li", rest__} -> rest]
{2, 4.0026, -272, -269, 0, 0, 1895, 18, 24.5874}
パターンにさらに情報を追加すると、テーブルから要素を選択する方法がより柔軟になります。
Cases[pt, {name_, symbol_, aNumber_, aWeight_, mp_, bp_, density_,
crust_, discovered_, rest__}
/; discovered > 1850 -> {name, symbol, discovered}]
{{「ヘリウム」、「彼」、1895}}
インタラクティブなものの場合、次のようにノックアップできますManipulate
。
elements = pt[[All, 1]];
headings = {"symbol", "aNumber", "aWeight", "mp", "bp", "density", "crust", "discovered", "group", "ion"};
Manipulate[
Column[{
elements[[x]],
TableForm[{
headings, Cases[pt, {elements[[x]], rest__} -> rest]}]}],
{x, 1, Length[elements], 1}]