mmzznno
@mmzznno (水野 雄爾)

Are you sure you want to delete the question?

Leaving a resolved question undeleted may help others!

Pythonの構文(昇順・降順)について

Q&A

Closed

Python初学者です。勉強を開始して4か月です。「Pythonによるデータ分析の教科書」でPandasの学習をしている最中です。

df.sort_values(by=”歩数", asending=False,).head()

上記のように歩数の値をキーにしてデータフレームを先頭5行降順に出力される構文があります。

しかし、Pythonでa=[1, 2, 3, 4, 5)というリスト内を降順にソートされる場合は

print(sorted(a, reverse=True))と記載します。

数値を降順に出力されるための”False”と”True”の考えた方に矛盾がある気がします。根本的なPythonの根本的な学習に問題があるためでしょうか。”False"と”True”の考え方が曖昧になっています。

どなたかご教授お願いいたします。

0

1Answer

数値を降順に出力されるための”False”と”True”の考えた方に矛盾がある気がします。

考えた方に矛盾がある…というか、考えた方に違いがあるとは思います。PandasのDataFrameのsort_valuesとPythonの組み込み関数であるsortedを作った人は違いますので。Pythonはグイド・ヴァンロッサムという人が、Pandasはウェス・マッキニーという人が作ったそうです。

sort_valuesのascendingはリストを昇順にするか?という引数なので、降順にしたい場合、Falseを指定します。sortedのreverseはリストを(昇順の)反対にするか?という引数なので、降順にしたい場合、Trueを指定します。

なぜ彼らがそのような引数にしたのか?それは彼らに聞いてみないと分かりません:stuck_out_tongue_winking_eye:

1Like

Comments

  1. @mmzznno

    Questioner

    返信ありがとうございます。わかりやすい回答です。

    勉強になったことは関数・ライブラリーの作成者が異なることです。

    あと反省点として出力結果だけにとらわれすぎていたことです。引数を英訳して意味を解釈すれば理解しやすいと思いました。今後の学習にいかしていきたいと思います。ありがとうございました。
  2. 疑問点が解消されて良かったです。

Your answer might help someone💌