我有三个 Dataframe ,我已经加入到一起,以创建一个单一的 Dataframe 。
df_1 = df_1.withColumn('idx', monotonically_increasing_id())
df_2 = df_2.withColumn('idx', monotonically_increasing_id())
df_3 = df_3.withColumn('DATE', to_timestamp('DATE')) \
.withColumn('idx', monotonically_increasing_id())
merged_df = df_1.join(df_2, ['idx']).join(df_3, ['idx']).drop('idx')
我想从中检索一组随机行。
我不对 Dataframe 进行任何排序,但当我使用limit
时
random_choices_df = merged_df.limit(10)
random_choices_df.show()
show
函数总是以相同的顺序显示相同的项目。
如何检索一组随机行?我认为limit
应该这样做,但由于某种原因,它保留了项目的顺序。我在一台机器上运行。
1条答案
按热度按时间wrrgggsh1#
您可以使用Sample函数从df中随机取样,然后限制所需的行数。