セクション 3. 章 5
single
列の最小値の検索
メニューを表示するにはスワイプしてください
最小値または最大値の上位を出力する、もう一つの重要な関数について学習。値をソートして特定の行数を抽出できることは既に知っているが、pandas ではこれを1行のコードで実行可能。最も古い15台の車を取得する例を参照:
1234import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) data_smallest = data.nsmallest(15, 'Year') print(data_smallest.head(15))
1つの列でソートし、その後別の列でソートしたい場合は、必要な順序で列名のリストを指定。以下の例では、まず 'Year'、次に 'Engine_volume' の順でソート。コードは最初に 5 台の最も古い車を抽出し、年が同じ場合は 'Engine_volume' 列の値が小さい車を優先する:
1234import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) data_smallest = data.nsmallest(5, ['Year', 'Engine_volume']) print(data_smallest.head())
以下の2つの例を比較してください。ここでは、関数を少し発展させます。カラムの 'Year' の値を使った例を見てみましょう。このカラムでは 'Year' の値が重複することがあります。そのため、以前の構文で最も古い車を10台出力しようとすると、関数は単純に10個の値だけを返します。10番目と同じ値が11番目や12番目にあっても考慮されません。このような場合を防ぐために、keep = 'all' メソッドに引数 .nsmallest() を追加できます。例を見て、実行して違いを確認してください。
1234567891011import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) # Case without using `keep = 'all'` argument data_smallest = data.nsmallest(6, 'Year') print(data_smallest) data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/cars.csv', index_col = 0) # Case with using `keep = 'all'` argument data_smallest = data.nsmallest(6, 'Year', keep = 'all') print(data_smallest)
タスク
スワイプしてコーディングを開始
ここでは、次のアルゴリズムに従ってください:
- カラム
'Year'の値が2010より大きい車のデータを取得します。 - 最も安い
15台の車(カラム15の最小値'Price'件)を抽出します。'Price'カラムの重複値もすべて含めます。 - データセット
data_cheapestのすべての値を出力します。
解答
すべて明確でしたか?
フィードバックありがとうございます!
セクション 3. 章 5
single
AIに質問する
AIに質問する
何でも質問するか、提案された質問の1つを試してチャットを始めてください