Python 按行垂直扩展数据帧并保持相同值的有效方法?
我在kaggle上做这个教育挑战 培训集是一些产品的每日销售额文件,我们需要预测的测试集是11月份类似产品的销售额。 现在,我想使用我的模型进行每日预测,从而将每行的测试数据集扩展30。 我有以下代码:Python 按行垂直扩展数据帧并保持相同值的有效方法?,python,pandas,dataframe,Python,Pandas,Dataframe,我在kaggle上做这个教育挑战 培训集是一些产品的每日销售额文件,我们需要预测的测试集是11月份类似产品的销售额。 现在,我想使用我的模型进行每日预测,从而将每行的测试数据集扩展30。 我有以下代码: for row in test.itertuples(): df = pd.DataFrame(index = nov15, columns = test.columns) df['shop_id'] = row.shop_id df['item_category_id'
for row in test.itertuples():
df = pd.DataFrame(index = nov15, columns = test.columns)
df['shop_id'] = row.shop_id
df['item_category_id'] = row.item_category_id
df['item_price'] = row.item_price
df['item_id'] = row.item_id
df = df.reset_index()
df.columns = ['date', 'item_id', 'shop_id', 'item_category_id', 'item_price']
df = df[train.columns]
tt = pd.concat([tt, df])
2015年11月
的日期范围为2015年11月1日至2015年11月30日
tt
只是一个空数据集,我通过将它扩展30行(11月1日到30日)来填充测试集中的每一行
test
是我从中复制行的原始数据帧
它可以运行,但需要几个小时才能完成。
了解大熊猫并从以前的经验中学习,这可能是一种有效的方法
谢谢你的帮助 所以我找到了一种“更”有效的方法,然后Reddit's r/learnpython的人告诉了我正确和最有效的方法。
上述困境很容易通过函数解决
这两行代码与我上面所做的一样,但只需几秒钟:
test['date'] = [nov15 for _ in range(len(test))]
test = test.explode('date')
现在,我的更有效的方法或第二种解决方案是简单地制作30份数据框副本,并添加一列“日期”。我想我知道您想要实现什么,但您能否发布一些示例数据的前后信息以帮助澄清?