2023,江端さんの技術メモ

QGISでノード番号のある場所を見つける方法が分からなくて困っていましたが、ようやく方法を見つけましたので、メモを残します。

この場合、180以下のノード番号が表示されていますが、特定の番号を指定したければ、(例えば、id=3)と入力すれば、そのノードだけが表示されます。

以上

2023,江端さんの忘備録

私は、これまで、自分の家族に、「痛みが100%になってからでは遅い。70%の段階で『叫べ』」と言い含めてきました。

I have always told my family, "It's too late when the pain is 100%. 'Scream' when it's 70%."

でもね、「本日中の復旧断念」というアナウンスを、今(23時)に出して、どーする。

そして、今回、私のメンタル不調を見かねた嫁さんが、何度も『早く上司に報告すべきだ』と言い続けました。

And this time, my wife, who couldn't bear to see my mental illness, kept saying repeatedly, 'You should report this to your boss as soon as possible.

まあ、自分でも、『人に散々語っておきながら、自分は叫べない』では、あまりに「無責任」で「卑怯」だと思いましたので、面談の際に、上司にその旨を報告してきました。

Well, I thought it was too "irresponsible" and "cowardly" for me to "talk a lot to people but not shout myself," so I reported this to my supervisor during the interview.

今、ちょっと、ホッとしています。

Now, I am a bit relieved.

-----

まあ、自分の番になって分かったことですが、

Well, I found out when it was my turn,

―― メンタル不調は、報告しにくい

"Difficult to talk to others about one's mental health problems."

ということです。

第1に「はずかしい」。

First, it is "embarrassing.

自分のメンタル不調を、私より若い上司に報告するのは、結構な勇気がいります。

Reporting my mental illness to a younger boss takes a lot of courage.

私より若い上司は、私より優秀です。

My boss, who is younger than me, is better than me.

そのような優秀な人が、「メンタル不調」を理解できるのかにも不安がありました。

There was also concern about whether such a talented person could understand "mental illness."

第2に、「私(江端)のキャラ外れ」ですね。

Second, it is "out of character for me (Ebata).

普段、ブログやコラムで、偉そうに政府、官僚、会社を批判している私が、このようなことを語るのは、この私でさえ『ギャップ』を感じます。

Even I, who usually criticize the government, bureaucrats, and companies in my blog and columns in a pompous manner, feel a 'gap' when I talk about this "mental illness."

この感じを一言で言えば、

This feeling in a word is,

―― どの口が言ってやがる

"Who the hell do you think you are?"

です。

そして、最大の理由は「メンタル不調は、言語化しにくい」ということです。

And the biggest reason is that mental illness is difficult to verbalize.

『憂鬱な気持ちが続く』『不安感に駆られる』『夜眠れず、寝てもすぐ目が覚めてしまう』『一日中、倦怠感と微熱が続く』『食欲がない』『やる気が出てこない』

"I feel continual depression," "I feel anxious," "I can't sleep at night and wake up soon after sleeping," "I feel tired and have a slight fever throughout the day," "I have no appetite," "I don't feel motivated."

そして何より、『この状態がいつまで続くか分かないことが一番辛い』を説明するのが、本当に難しい。

And above all, it is tough to explain 'the most challenging part is not knowing how long this condition will last.

上記の内容は、『客観的事実』なのですが、口にすると『主観的』に聞こえてしまうのです。

When uttered, the above are 'objective facts' but sound 'subjective.'

-----

私もエンジニアですから、メンタル不調については、色々調べました。

I am an engineer, so I have done a lot of research on mental illness.

その上で、休憩、食事、気分転換など、メンタル不調に良いと言われていることを試みて、なお、この状況がなかなか改善されないことに、愕然としました。

On top of that, I was astonished to find that even after trying everything suitable for mental illness, such as rest, food, and mood swings, this situation still did not improve much.

私の十八番のエンジニアリングアプローチが通用しない ―― メンタル不調、恐るべし

My best engineering approach doesn't work ---- Horrible mental illness

この症状の「手の打ちようのなさ」を痛感するに至りました。

I became acutely aware of the "inaccessibility" of this mental illness.

-----

今回、私は、私は「通院していることと」と「安定剤と睡眠薬を処方されている」という、分かりやすい「客観的事実」を加えて、上司に説明することにしました。

This time, I decided to explain to my supervisor that I was "going to the hospital" and that I was "prescribed stabilizers and sleeping pills," adding the obvious "objective facts."

私の場合、無事、上司に理解して貰えたように思います。

In my case, I think I have successfully made my boss understand.

結局のところ、上司も私もエンジニアであって、エンジニア同士の言語は、はやり「客観的事実」なんだなぁ、と実感しています。

After all, my boss and I are both engineers, and I realize that the language between engineers is, after all, "objective fact.

その後、仕事の内容や量について配慮して貰えることになり、現在は、メンタル不調から、少しずつ回復している感じを実感できて、ちょっと安心しています。

After that, I was considered for the content and quantity of my work, and now I feel that I am gradually recovering from my mental illness, which is a bit of a relief.

それでも、健康管理と体調管理、そしてメンタル管理には、気を抜かないようにしようと心掛けております。

Nevertheless, I try to stay on top of my health, physical condition, and mental health.

-----

メンタル不調は、報告・連絡・相談(ほうれんそう)が重要と言われています。

It is said that reporting, contacting, and consulting (horenso) are essential for mental illness.

ただ、多くの場合、この「ほうれんそう」は、本人の健康管理をおもんばかる体裁を装いつつ、結局のところ企業や組織の理論で書かれている ―― そんな感じがしています。

However, in many cases, this "horenso" is written under the guise of caring for the individual's health care but ultimately based on the theory of the company or organization -- such is the feeling I get.

ともあれ、メンタル不調の報告は、それ自体が恐しく難しいです。

Regardless, reporting a mental illness of mine was itself frighteningly difficult.

普段、えらそうにしている私(江端)ですら ―― というか、私だからこそ ―― 『はずかしい』『キャラ外れ』『言語化困難』の前に、怯(ひる)んでいました。

Even I (Ebata), who usually makes such a big deal out of it... No, it is this me... was intimidated by the "embarrassing," "out-of-character," and "difficult to verbalize" comments.

-----

『誰にも何も言わずに、メンタル不調を自力で乗り越えたい』という気持ちは、本当によく分かります。

I understand the feeling of 'I want to get over my mental illness alone without saying anything to anyone.

そして、事実、多くの人が、そうやって何のアクションも取らずにいることは、簡単に推測できます。

It is easy to guess that many people do so and take no action.

なぜ、私(江端)は、そう言い切れるのか? ―― 自死の半数近くが、メンタル不調を起因とするものであり、その人数が驚くほど多いからです。

Why can I (Ebata) say that? -- Because nearly half of all suicide deaths are caused by mental illness, the number is astonishingly high.

そして ―― メンタル不調が、驚くほど簡単に自死につながりやすいことも、よく知っています。

And -- I know all too well that mental illness can lead to suicide with surprising ease.

コラムでさんざんエラそうなことを書いてきた江端の、この体たらくを知って、少しでも気が楽になって貰えれば、幸いでございます。

2023,江端さんの忘備録

自己承認欲求とは、基本的には「目立たい」ということだと思っています。

I believe the desire for self-approval is a desire to stand out.

他人と違うところを示して、自分を認めてもらいたい、という気持ちは、自然な感情だと思います。

I think it is a natural emotion to want to show that you are different from others and to be recognized for who you are.

ところが、状況によっては「目立ちたくない」という場面もあります。

However, there are situations in which one does not want to "stand out."

----

長い人生の中では、自分のやってきたことで、思わぬ過分な評価を貰うことがあります。

You may receive unexpected and overdue recognition for what you have done in a long life.

それ自体は良いのです。

That in itself is fine.

問題は、それが知れ渡ることで、いろんなところから相談が舞い込んでくることです。

The problem is that people from all walks of life will come to us for consultations, it becomes known.

「相談」というからには、こっちにその選択権があるような気がしますが、これが業務に関わることになると、事実上の「命令」になります。

You may feel that since it is called "consultations," you have the right to choose. However, it becomes a de facto "order in business matters.

ただでさえ時間がないところに、そこから「業務命令」というタスクが加わることになり、メンタルとフィジカルの両方が、他人によって喰い散らかされることになります。ぶっちゃけ「迷惑です」。

Even if you are short on time, "work orders" will be added, and others will eat up your mental and physical resources. To be frank, it is "annoying."

しかし、こういう相談がやってこないと、自分のやりたいことを、掘り下げて、広げていくことが難しくなるのも、また事実なので、そういう相談が全くないのも「困ります」。

However, it is also true that if these consultations do not come to us, it will be challenging to dig in and expand on what we want to do, so it is "troubling" that there are no such consultations.

-----

「目立ちたいこと」と、「目立ちたくないこと」を、自分自身でコントロールできれば良いのですが、これがなかなかに難しい―― というか、不可能です。

It would be nice to control what we "want to stand out" and what we "don't want to stand out," but this is quite complex - or, rather, impossible.

つまるところ、『自分は、流れる川の中に浮ぶ、落葉のような存在だ』と諦めるしかないようです。

Ultimately, it seems we have no choice but to resign ourselves to the fact that "I am like a falling leaf floating in a flowing river.

『なんだぁ!、この陽キャの承認欲求と刹那な快楽主義を満たす為だけに存在している、悪魔のイベントはぁ!?』

2023,江端さんの忘備録

権力者が死なないと、その権力者の犯罪が明るみに出ない、というのは、よくある話です。

こちらにも書きましたが、未来の私が思い出せるように、概要を残しておきます。

As mentioned above, I will leave a summary for future me to remember.

(1)性犯罪を生涯続けてきた人物をトップに置き続けてきた「ジャニーズ」という芸能事務所がありました。

(1) There was an entertainment company called "Johnny's" that kept a lifelong sexual predator at the top.

(2)その人物の死亡によって、ようやく、その犯罪が明らかになってきました。

(2) His crime finally comes to light with that person's death.

(3)しかし、その芸能事務所は、自主廃業は行わずに、今後も事業を継続するという意思を示しています。

(3) the entertainment company has indicated that it will not voluntarily close its business and will continue to do so.

(4)現時点では、「ジャニーズ」という名称も維持する予定らしいです。

(4) At this time, they also plan to keep the name "Johnny's."

-----

私は、「ジャニーズ」という事務所には興味がありませんので、その事務所が何を選択しようが知ったことではありません。

I have no interest in "Johnny's" office, so I don't care what that office chooses to do.

ただ、

However,

(1)自主廃業して、

(1) Voluntary closure of business,

(2)第三者機関による被害者救済団体を設立し、

(2) Establish a third-party victim relief organization,

(3)内部留保資産の全額を被害者救済の支払いに当てて、その残額を救済団体の基金とする

(3) All retained assets are allocated to pay for victims' relief, and the balance is used as a fund for relief organizations.

という、私の中では当然の処理フローが、全く提示されないのを不思議に思ってはいます。

I wonder why the natural process flow, "the best way to do it," is not presented.

-----

私の予測の一つに、

One of my predictions is

「ジャニーズ」という言葉が「チャイルドセクシャルアブユーズ(児童性虐待)」という意味で使われていく未来があります。

The term "Johnny's" will mean "child sexual abuse.

「Karoshi(過労死)」「Tsunami(津波)」という英単語が世界に広まったように、

Just as the English words "Karoshi" (death from overwork) and "Tsunami" (tsunami) have spread around the world,

―― 驚くことに、あの学校は組織的な"ジャニーズ(児童性虐待)"をしていました。

"To our surprise, the school had an organized Johnny's."

というような用語として、世界中に使わていく未来です。

This is a future in which the term will be used worldwide.

それはそれで、世界に"何か"の貢献をすることなるかもしれません。

It may be that we will contribute "something" to the world.

ともあれ、私の頭の中では「ジャニーズ = 児童性虐待」で、変換登録完了済みです。

I think "Johnny's = child sexual abuse," and the conversion is already registered.

2023,江端さんの忘備録

私が、NHKスペシャルにおいて最高傑作と認定し、その後もその認定が更新されていない

This content I have identified as the best in NHK Specials and that has not been renewed since then,

キューバ危機【十月の悪夢・破滅の淵の13日】

The Cuban Crisis [October Nightmare: 13 Days on the Edge of Doom]"

が、今、YouTubeで見られるようです。

is now available on YouTube.

このドキュメンタリーは、シミュレーションエンジニアとしての、今の私を作ったコンテンツの一つです。

This documentary is one of the contents that made me who I am today as a simulation engineer.

―― こうやって、パソコンの中に、ケネディと、マクナマラと、アチソンを作るのかぁ

2023,江端さんの忘備録

私は、髪の毛が一定の長さを越えると、突然、頭髪がうっとうしく感じるようになります。

When my hair exceeds a certain length, I suddenly start to feel annoyed with my head of hair.

ところが、最近の私は、床屋に行く時間すら惜しいです。

These days, however, I can't even spare the time to go to the barber.

短時間、低コストを売りにしている床屋でさえ、待ち時間を入れれば、1時間弱の時間が取られることもありますし、そこそも、床屋に出かけるのが面倒です。

Even barbershops that sell short-time, low-cost services can take less than an hour if you include waiting time, and even there, it is a hassle to go out to the barbershop.

で、まあ、こういう所業に至ってしまう訳です。

And so, well, I ended up in this kind of situation.

という訳で、本日、私、40年ぶりくらいに「丸刈り」にしてきました。

ところが、この髪型、家族に恐しく評判が悪かった。

However, this haircut was not well received by the family.

毎朝、嫁さんや娘がギョっとした顔をします ―― まあ、私も毎日、鏡の中に「東京裁判審理中の東条英機元首相」の姿を見ることになりましたが。

Every morning, my wife and daughter look at me with gawk -- well, I also see the image of "former Prime Minister Hideki Tojo during the Tokyo Tribunal proceedings" in the mirror every day.

という訳で、最近は「丸刈り」はやめて、「スポーツ刈り」に戻していますが、あいかわらず、床屋に行くのは面倒です。

So, I have recently stopped wearing a "round haircut" and returned to a "sports haircut," but it is still a hassle to go to the barber.

-----

バリカン買ってみました。

I bought a clipper.

まあ、床屋2回分のコストで元が取れるし、そもそも、私は理容に「美」を求めていませんので、これで十分です。

Well, the cost of two barbershops will pay for itself, and since I am not looking for "beauty" in hairdressing in the first place, this is good enough for me.

また、付属のコームを付ければ、一定の髪の毛を残すこともできるので、問題ありません。

Also, with the attached comb, you can leave a certain amount of hair in place, which is not a problem.

上半身裸になって庭に出て、適当にバリカンで刈りまくって、髪の毛をふり落した後、そのまま、風呂場に直行しました。

I stripped down to my top, went out into the yard, and after trimming my hair with clippers at random and shaking it off, I went straight to the bathroom.

後頭部だけは見えないので、嫁さんに、はさみで切り落して貰いましたが、これも将来的には自力でなんとかしたいと思います。

Only the back of my head is invisible, so I asked my wife to cut off the hair with scissors, but I would like to do something about this on my own.

-----

自分の髪型に1mmのこだわりもなく、ただ、うっとうしい髪をとっとと処分したいだけ人には、「バリカン」の利用をご提案したいと思います。

For those who are not particular about their hairstyle and want to get rid of their annoying hair as soon as possible, I suggest using "hair clippers.

2023,江端さんの技術メモ

SELECT seq, node, edge, b.cost
FROM pgr_dijkstra(
    'SELECT gid as id, source, target, cost, reverse_cost FROM ways WHERE source NOT BETWEEN 10 AND 20 AND target NOT BETWEEN 10 AND 20',
    1, 50, directed := false
) a
INNER JOIN ways b ON (a.edge = b.gid)
ORDER BY seq;

出力結果
seq | node | edge | cost
-----+------+------+------------------------
1 | 1 | 2 | 8.518550262944416e-06
2 | 2 | 3 | 9.420518456308501e-05
3 | 3 | 4 | 2.6662995399998606e-05
4 | 4 | 6 | 2.1389117484400878e-05
5 | 5 | 7 | 4.6563628817813256e-06
6 | 6 | 1313 | 7.188606587820858e-06
7 | 863 | 126 | 1.0007051975223507e-05
8 | 99 | 127 | 1.450451593740212e-05
9 | 100 | 129 | 7.160567611289415e-06
10 | 101 | 131 | 4.109420419283505e-05
11 | 102 | 133 | 2.934679929904221e-05
12 | 103 | 135 | 1.5514200871555155e-05
13 | 104 | 137 | 1.2955240951715268e-05
14 | 105 | 139 | 3.932409601088787e-05
15 | 106 | 141 | 3.756326743314803e-05
16 | 107 | 143 | 6.437495269868342e-05
17 | 108 | 145 | 3.580138401404371e-05
18 | 109 | 147 | 5.81727588604755e-05
19 | 110 | 148 | 4.310761927462597e-05
20 | 651 | 1196 | 0.00021148735186994806
21 | 780 | 995 | 0.00017553851429442523
22 | 653 | 997 | 5.381635439655622e-05
23 | 654 | 996 | 3.9727662820583996e-05
24 | 21 | 24 | 6.931684268013142e-06
25 | 22 | 25 | 7.70969814835397e-06
26 | 23 | 26 | 1.2029326750062135e-05
27 | 24 | 27 | 3.163056561909417e-05
28 | 25 | 28 | 3.715561627508799e-05
29 | 26 | 29 | 1.6759949788587843e-05
30 | 27 | 30 | 1.3935943447597369e-05
31 | 28 | 31 | 7.276956035534738e-06
32 | 29 | 32 | 1.2096545992840006e-05
33 | 30 | 33 | 4.534133154905821e-05
34 | 31 | 34 | 1.8836761764769703e-05
35 | 32 | 35 | 8.806681794688408e-06
36 | 33 | 36 | 7.526055852520615e-06
37 | 34 | 37 | 1.0243676427727028e-05
38 | 35 | 38 | 1.5622874238716658e-05
39 | 36 | 39 | 6.894091782961944e-06
40 | 37 | 40 | 1.786596350373829e-05
41 | 38 | 41 | 1.796453895498639e-05
42 | 39 | 42 | 6.566793603978039e-05
43 | 40 | 43 | 4.0144224056584715e-05
44 | 41 | 44 | 2.037304658526977e-05
45 | 42 | 45 | 1.643518634972223e-05
46 | 43 | 46 | 1.1916705412252495e-05
47 | 44 | 47 | 1.0031152210412222e-05
48 | 45 | 48 | 1.1949163674231717e-05
49 | 46 | 49 | 1.7529822253810993e-05
50 | 47 | 50 | 1.9115799546536715e-05
51 | 48 | 51 | 5.101757589403705e-05
52 | 49 | 53 | 2.8187114581170035e-05

2023,江端さんの技術メモ

送信プログラム(send_data.c):

#include <stdio.h>
#include <stdint.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <unistd.h>

int main() {
    int sockfd;
    struct sockaddr_in server_addr;
    uint32_t data = 0x12345678; // 4バイトのデータ(0x12345678)

    // ソケットの作成
    if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1) {
        perror("socket");
        return 1;
    }

    // 送信先サーバの情報を設定
    server_addr.sin_family = AF_INET;
    server_addr.sin_port = htons(12345); // 送信先ポート番号
    server_addr.sin_addr.s_addr = INADDR_LOOPBACK; // ループバックアドレス (127.0.0.1)
    # INADDR_LOOPBACK で動かなければ、INADDR_ANY を使う

    // データを送信
    if (sendto(sockfd, &data, sizeof(uint32_t), 0, (struct sockaddr *)&server_addr, sizeof(server_addr)) == -1) {
        perror("sendto");
        close(sockfd);
        return 1;
    }

    printf("Data sent: 0x%X\n", data);

    close(sockfd);

    return 0;
}

受信プログラム(receive_data.c):

#include <stdio.h>
#include <stdint.h>
#include <netinet/in.h>
#include <sys/socket.h>
#include <unistd.h>

int main() {
    int sockfd;
    struct sockaddr_in server_addr;
    struct sockaddr_in client_addr;
    socklen_t client_addr_size = sizeof(client_addr);
    uint32_t received_data;

    // ソケットの作成
    if ((sockfd = socket(AF_INET, SOCK_DGRAM, 0)) == -1) {
        perror("socket");
        return 1;
    }

    // サーバの情報を設定
    server_addr.sin_family = AF_INET;
    server_addr.sin_port = htons(12345); // 受信ポート番号
    server_addr.sin_addr.s_addr = INADDR_ANY;

    // ソケットとポートを結びつける
    if (bind(sockfd, (struct sockaddr *)&server_addr, sizeof(server_addr)) == -1) {
        perror("bind");
        close(sockfd);
        return 1;
    }

    printf("UDP Server is waiting for messages...\n");

    while (1) {
        // データを受信
        if (recvfrom(sockfd, &received_data, sizeof(uint32_t), 0, (struct sockaddr *)&client_addr, &client_addr_size) == -1) {
            perror("recvfrom");
            close(sockfd);
            return 1;
        }

        printf("Received Data: 0x%X\n", received_data);
    }

    close(sockfd);

    return 0;
}

2023,江端さんの忘備録

自分一人でできることには、限界があります。

There is a limit to what I can do on my own.

だから、大きなことを成し遂げるだめには、チームを作って、協力しあう必要があります。

So, to accomplish something big, we need to build a team and work together.

しかし、私は、チームを作って、協力しあうのが、苦手です。

However, I am not good at building a team and working together.

だから、私には、大きなことを成しとげることはできない、と腹を括っています。

So, I am resigned that I will not be able to accomplish great things.

それ故、「自分1人でできること」を、「自分1人」でやっています。

Hence, I am doing "what I alone can do."

-----

これからは、そういう新しい行動様式や価値観が、従来の価値観に対抗する形で、力強く立ち上がってくるだろう ―― と、この3年間のコロナ禍中で思い続けてきました。

From now on, such new behaviors and values will rise strongly in opposition to conventional values -- I have continued to think this during the past three years of the Corona disaster.

上位下達、業務命令とは異なる新しい社会 ―― 人間関係が"疎"結合で結びついた、自律した個人からなる分散社会が到来するだろう、と。

A new society is different from the one based on superiors, subordinates, and business orders - a decentralized community of autonomous individuals with "loosely" coupled human relationships will arrive.

しかし、私が思っていた以上に、世界の復元力は強かったようです。

However, the world seemed more resilient than I had thought.

もっと分かりやすく言えば ――

To put it more simply--

世界中の全ての人間が、私のような『ぼっち』になって、孤独、孤立がデフォルトの世界になれば、みんな、孤独や孤立を感じない世界として完成する。

If every human being in the world becomes 'alone' like me, and loneliness and isolation become the default, we will all complete the world as a world where we do not feel lonely and isolated.

結果として、そのような、私にとってのユートピア、多くの人にとってのディストピアは、残念ながら具現化されなかったようです。

Such is the fact that utopia for me, and dystopia for many, was unfortunately not materialized.

―― 学閥、人脈、コネ一切なしの、シニアのサラリーマンエンジニアの「ぼっち戦略」

2023,江端さんの技術メモ

■ダイクストラ計算を使った方法(一般的なやりかた)
tomioka_db_b=# SELECT seq, node, edge, b.cost FROM pgr_dijkstra('SELECT gid as id, source, target, cost, reverse_cost FROM ways',1, 11) a INNER JOIN ways b ON (a.edge = b.gid) ORDER BY seq;
seq | node | edge | cost
-----+------+------+------------------------
1 | 1 | 2 | 8.518550262944416e-06
2 | 2 | 3 | 9.420518456308501e-05
3 | 3 | 4 | 2.6662995399998606e-05
4 | 4 | 6 | 2.1389117484400878e-05
5 | 5 | 7 | 4.6563628817813256e-06
6 | 6 | 8 | 1.3184236987589488e-05
7 | 7 | 9 | 6.438782425766514e-06
8 | 8 | 10 | 3.92599380897713e-05
9 | 9 | 11 | 3.1320245670872654e-05
10 | 10 | 12 | 1.7193010226696205e-05

■ところが、こうすると、2番目の最短距離が算出できます。

tomioka_db_b=# SELECT seq, node, edge, b.cost FROM pgr_ksp('SELECT gid as id, source, target, cost, reverse_cost FROM ways',1, 11, 2) a INNER JOIN ways b ON (a.edge = b.gid) ORDER BY seq;
seq | node | edge | cost
-----+------+------+------------------------
1 | 1 | 2 | 8.518550262944416e-06
2 | 2 | 3 | 9.420518456308501e-05
3 | 3 | 4 | 2.6662995399998606e-05
4 | 4 | 6 | 2.1389117484400878e-05
5 | 5 | 7 | 4.6563628817813256e-06
6 | 6 | 8 | 1.3184236987589488e-05
7 | 7 | 9 | 6.438782425766514e-06
8 | 8 | 10 | 3.92599380897713e-05
9 | 9 | 11 | 3.1320245670872654e-05
10 | 10 | 12 | 1.7193010226696205e-05
12 | 1 | 2 | 8.518550262944416e-06
13 | 2 | 1214 | 7.368115779153013e-06
14 | 792 | 118 | 8.976775615866592e-06
15 | 95 | 119 | 9.423341104506603e-05
16 | 96 | 121 | 2.578196166482512e-05
17 | 97 | 123 | 2.35136729002621e-05
18 | 98 | 125 | 6.587696385101331e-06
19 | 99 | 126 | 1.0007051975223507e-05
20 | 863 | 1313 | 7.188606587820858e-06
21 | 6 | 8 | 1.3184236987589488e-05
22 | 7 | 9 | 6.438782425766514e-06
23 | 8 | 10 | 3.92599380897713e-05
24 | 9 | 11 | 3.1320245670872654e-05
25 | 10 | 12 | 1.7193010226696205e-05

10番目までを出したかったら、上記の"2"を、"10"にすれば出てきます。
綺麗に直す方法については、がんばって下さい。