次の入力ファイルがあります
O 2.05151 39.51234 0.00000
O 32.69451 1.48634 8.31300
O 10.53351 21.63634 7.95400
O 30.37451 20.74134 0.99700
Si 8.06451 19.19434 10.21700
Si 32.03251 42.98634 21.23900
O 9.69051 19.06934 16.27200
Si 2.18351 39.67034 11.36500
Si 31.78351 2.38334 1.42300
……
まず、これらのデータを [0~1, 1~2, 2~3, ...., max-1 ~ max] のように 4 番目の列に基づいて分類し、'Si' と '各セクションの O'。その後、それらの数値に基づいて計算を行い、印刷します。印刷フォーマットが
section1 number_of_Si_in_section1 number_of_O_in_section1 add_two_numbers
...
3 つのスペースを分けて、ネストされた for ループを使用しようとしましたが、失敗しました。
for i1 in range (total number of lines)
for j1 in range (each sections)
if (at_name[j1] = 'Si'):
num_Si = num_Si + 1
if (at_name[j1] = 'O'):
num_O = num_O + 1
このようなものですが、途中で立ち往生しました。numpy や csvanal などの関数で簡単にできると聞きましたが、よくわかりません。