【发布时间】:2019-06-19 09:52:29
【问题描述】:
我在 Bigquery 中使用 Python,并且有一个大的数据框 df(大约 7m 行)。我还有一个列表 lst ,其中包含一些日期(比如给定月份中的所有日期)。
我正在尝试在 df 中创建一个附加列“random_day”,其中每一行中的 lst 都有一个随机值。
我尝试运行一个循环并应用函数,但作为一个相当大的数据集,它被证明具有挑战性。
我的尝试通过循环解决方案:
df["rand_day"] = ""
for i in a["row_nr"]:
rand_day = sample(day_list,1)[0]
df.loc[i,"rand_day"] = rand_day
以及应用解决方案,首先定义我的函数,然后调用它:
def random_day():
rand_day = sample(day_list,1)[0]
return day
df["rand_day"] = df.apply(lambda row: random_day())
对此有什么建议吗? 谢谢
【问题讨论】:
标签: python pandas loops random