正確な個のランダムな行をDataFrameから効率的に選択するにはどうすればよいですか? データには、使用できるインデックス列が含まれています。 最大サイズを使用する必要がある場合は、インデックスの列でcount()またはmax()の方が効率的です。DataFrameからランダムな行の正確な数を選択する方法
0
A
答えて
2
可能なアプローチは、この範囲から任意の長さのランダム系列を生成するpython
のrandom libraryからsample()
を使用し、その後、.count()
を使用して行数を計算することです。最後に、得意先番号vals
のリストを使用して、インデックス列をサブセット化します。
import random
def sampler(df, col, records):
# Calculate number of rows
colmax = df.count()
# Create random sample from range
vals = random.sample(range(1, colmax), records)
# Use 'vals' to filter DataFrame using 'isin'
return df.filter(df[col].isin(vals))
例:
df = sc.parallelize([(1,1),(2,1),
(3,1),(4,0),
(5,0),(6,1),
(7,1),(8,0),
(9,0),(10,1)]).toDF(["a","b"])
sampler(df,"a",3).show()
+---+---+
| a| b|
+---+---+
| 3| 1|
| 4| 0|
| 6| 1|
+---+---+
関連する問題
- 1. mysqlからランダムな行を選択する方法
- 2. ランダムテーブルからランダムな行を選択する方法
- 3. Spark DataFrame - ランダムなn行を選択する
- 4. 正確なテキストでドロップダウンからオプションを選択する方法
- 5. データベースからランダムな行を選択
- 6. 5つの異なるテーブルから正確な値を選択する方法
- 7. txtファイルからランダムな単語を選択する方法は?
- 8. MySQL - 大きなテーブルからランダムな行を選択する
- 9. カウントダウン後にMySqlからランダムな行を選択する方法は?
- 10. postgresからk個のランダムな行を選択するdjango ORM
- 11. 表示する方法からランダムなイメージを選択する方法は?
- 12. ディレクトリツリーからランダムに完全に公正な方法でファイルを選択
- 13. 乱数のセットからランダムに選択する方法は?
- 14. 行列から正のインスタンスをランダムに選択します。
- 15. DataFrame行を選択する
- 16. リストからランダムな色を選択
- 17. LaravelテーブルからランダムなIDを選択
- 18. Oracleのランダムな行を選択
- 19. データベースからランダムに行を選択する関数です。
- 20. パンダの異なるポイントから行を選択する方法
- 21. ランダムな配列から選択
- 22. 任意の条件数でpandas DataFrameから行を選択
- 23. ColdFusionのcfdirectoryクエリからランダムなファイルを選択する方法は?
- 24. ユーザーフォーム入力の選択からランダムな文字列を印刷する方法
- 25. .txtファイル(VB)のリストから一度ランダムな単語を選択する方法
- 26. PHPを使用してSQLからランダムな行を選択
- 27. 別の行でPythonのランダムな選択
- 28. Pyspark DATAFRAME選択行
- 29. MySQLでランダムな行を選択
- 30. MySQLでランダムな行を選択
は、あなただけの 'df.sample()'を使用することはできませんか? – mtoto
@mtoto sample()はおおよその数値を返しますが、アルゴリズムによっては特定のシナリオで正確な数値が要求されます。 – Boris